Changes to enable validation for objects generated by InputFormatters.

UnitTests + FunctionalTests for the same.
why cant this be a private class for body validator?