Exported symbols:
The primary validation function for json-schema. Takes data: which can be a simple value or an object as a hash table, and then optionally accepts a schema (if the data doesn't contain a top-level $schema key), schema version and pretty-errors-p deterimines whether the second return value is exception objects or strings of the rendered errors (strings by default).
The third return value is a json-schema.reference::context, which contains all of the state stored in processing a schema including caching network resources and all of the resolved ids.