Html helper updates

Updates to HtmlHelper and associated classes in `ServiceStack.Html` namespace to bring them in line with latest code from `System.Web.Mvc`. 

Some files are now broken into one-class-per-file to make it easier to compare with upstream code to detect changes.

This also adds `AntiForgeryToken` code from `System.Web.Mvc`.

Moved three classes into `Html` namespace from `ServiceStack.Markdown` that were only ever used from `ServiceStack.Html` namespace.

Razor2: Add `ResolveViewFn` property to allow setting a custom view name resolver. (Defaults to existing view name resolver).