A new JSON validator for Field (and Cases in general).

I've seen merges with invalid Surveyor data (i.e. missing answer and
question ID keys) that passed the old validator.  Clearly this means
that the old validator is broken.

The existence of JSV also means that the old validator is pointless,
because there's no reason to write a new validator when a good one
already exists.
The new validator revealed overly-strict schemas.
The new validator caught invalid test data!

Neat.