Refactored Expressions to return a specific type to enable full chaining on SelectQuery (and in the future joins, update, and delete queries).
Finished Delete, Insert, and Update queries.
Refactored Querable and added to InsertQuery and UpdateQuery. ModelUpdateQuery and ModelInsertQuery now use the normal UpdateQuery and InsertQuery classes.
InsertQuery can now do INSERT INTO x (...) SELECT... syntax. HistoryQuery now uses InsertQuery and SelectQuery.
Refactored expressions for one last time. Added Conditions and static methods. Added helper Select class. Add exists() method to Model which returns true when the model has a key and the key points to a record in the database.