automatic conversion of JSON values in SqlStatement
updateComponent
updateComponent takes entity as an argument. It will
insert a new component if it doesn't have an id.
introducing optional component joins
deletion of components from entities
entity set respects an order parameter.

entity set entities now retain the order of the
entities as they were added.
fixed where clause formation
added some PRAGMA optimisations which increase the
speed of operations, at the cost of the db being
slightly less resilient. These optimisations still
need to be controlled via options.
return early if no rows