Add TestSchemaValidation.

'mvn clean verify' works.
Existing unit tests also pass.
Clean up style bugs in new patches.