Change MVC tag helpers to not override tag name

- #1523
- test tag name preservation with all MVC tag helpers
 - `<input/>` tag helper generation of a checkbox wasn't previously tested

See individual commit descriptions for more.

/cc @NTaylorMullen @pranavkm 
This is now an interesting interaction. If there's another `TagHelper` that is also targeting the `input` tag which happened to fill in the `type` attribute you'll continue along down utilizing `inputType` even though the `output.Attributes["type"]` may not be `inputType`.  That's what we're going for?