Disable parts of the timeline as the dates for them pass

As each date in the timeline passes, it will show as "disabled" to show that that item has passed. I've styled it as such:

![](https://cloud.githubusercontent.com/assets/494732/3321681/d692bfa6-f73a-11e3-8385-6b9bf4a47e23.png)

I've split the logic into a partial view. There is a lot more to it compared with before, but it gave me the chance to refactor some of the logic out of the controller.

I'm not keen on the use of `ViewDataDictionary` in `_Timeline.cshtml, but I can't think of another way to keep the presentation strings in the view.