Add a ProcessingReport class

This is in essence a list of ProcessingMessages. Make it implement AsJson to
return this list of messages as a JSON array.

Signed-off-by: Francis Galiegue <fgaliegue@gmail.com>
Add JsonSchemaContext

This class extends ProcessingContext, and carries schema and instance
information. Its .newMessage() method returns a message with these informations
already filled.

Signed-off-by: Francis Galiegue <fgaliegue@gmail.com>