Fix #566, return string from simple HTML helpers

- allows compositions such as `@Html.Label("property", Html.Id("property"))`
- in normal case, `RazorPage.WriteTo()` calls from the generated code will do HTML encoding
- see individual commits for details

/cc @yishaigalatzer 
This doesn't have much to do with `System.Type`'. Maybe lowercase type?