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 
see my other comment about the return