Start of database refactor - simplifying drivers
Adding a debug database driver that sends query events.
Updating DatabaseFactory.
s/SQLQuery/Query classes
s/Thing/Entity
s/ThingCollection/EntityCollection

Also creating an EntityBuilder class for creating Entities directly from
a query.
s/Relation/Relations and improving relation logic.
Create _Entity_Command, not thing.
Updating CreateModuleCommand and Form to use Entities.
Removing Model logic - candidate for future removal.
Creating a QueryStatement that wraps PDOStatement.

This class can take an array of parameters that will merged during
execute() - this will allow for the query builders to prepare all
values, but still allowing for extra parameters to be specified.
Improving queries by using QueryStatement.
PDODriver now returns a QueryStatement on prepare().
Moving database setter logic into AbstractEntity.

Fixing __sleep issues with database connection.
Adding a simple database service.
Updating MigrationRunner to use correct Interface.
Updating migration commands.
Changing Database setter methods in AbstractQuery.
s/Debug/Event Driver for database.
Ensuring the database EventDriver sets itself to query builders.