Improve XML comments in `HtmlHelper` and related classes and interfaces

- #847 line 1: copy XML comments from interfaces to extension methods
- lots of wording changes to be more consistent
 - core text split from PR #866, where @rynowak and I hashed out the words
 - to extent possible, reuse words between method descriptions

- add `<remarks>` describing behaviour of input helpers e.g. `CheckBox()`
- add a few missing `<param/>` and `<typeparam/>` elements and fill in empty ones
- display more HTML elements as tags
- use `<c>true|false|null</c>` more often

nits:
- "The expression" -> "An expression"
- make examples for `ObjectToDictionary()` and `AnonymousObjectToHtmlAttributes()` more consistent
- move `<typeparam/>` elements (that existed) after all `<param/>` elements
I'm not sure this is correct, if a user has defined a custom template for the type following the conventions, display for will render the HTML markup using that template, and it might not render all the properties in the object defined by the expression. I would say that it renders the object using the template for the type defined by the user or, by default will render each property in the object,