Input formatter header abstractions  and Exposing InputFormatters through MvcOptions.

Does not target (will be done in separate PRs)
1.  Defining InputFormatter interface.
2. Cleaning up existing formatters.