remove unused constants
update Model::find to handle cases when $id is 0

Only the case where $id was set to NULL was being tested. And in the
code the condition of the if statement was simply if ($id) { ... }.

However in PHP 0 is a falsy value (evaluate to false in an if statment)
so it wouldn't actually search for a record that had it 0.

This was
fixed using is_null in the condition instead.
improve tests for Model#save and fix bugs related to generatings IDs

There were several problems with the old code

- In our test case mysql_insert_id() returned zero for some reason and
  the record wasn't found when you tried to find it with Model::find.
  This was fixed by doing some SQL to manually retrieve the last ID
  inserted and just increment it.

I also added some more assertions to the save test to have a little more
confidence that it actually was working correctly.
make Database#query throw an exception if the query is not valid
uppercase some sql
make next_insert_id() protected so subclasses can override it

This would be the case for Production since it handles IDs a little
differently
require all files dynamically in all.php
require all files in lib before running tests
add monolog, wrapper class, and log file
remove log from git repo
create log file if it doesn't exist
log when performing an sql query
handle the fact that productions cannot autogenerate their own IDs
move commas to infront