Implemented default meta-keyword with rollback functionality.

Any defaults specified in the schema will be applied to the json instance
being validated. In case the schema uses the keywords 'anyOf', 'oneOf' or
'allOf' then the applied defaults are rolled back for each schema that
fails validation. The default values from successfully validated schemas
remain on the instance.

Signed-off-by: Johny Jose <johny@playlyfe.com>