Changes to enable validation for objects generated by InputFormatters.

UnitTests + FunctionalTests for the same.
Typically unless it is nested really deep and discoverability is an issue, we tend to not duplicate the properties. Specifically here its a private context, hence no duplication should be needed.