Changes to enable validation for objects generated by InputFormatters.

UnitTests + FunctionalTests for the same.
Is there some specific reason you are looking for? This is singleton because I see no reason why this would have to be created again and again for different usages (since it maintains no state).