Changes to enable validation for objects generated by InputFormatters.

UnitTests + FunctionalTests for the same.
your change should not break behaviors. So when it gets merged into dev, it should include this.

If you have to make the work with multiple commits on a feature branch.