Implemented lean schemas.

JsSchema has been moved from copying the full hash set to a node structure and a delayed flattening of the node tree if the schema is used often. Flattening of schemas is done on a background thread to limit the impact on normal operation.

Bug: #50