Merge pull request #1 from michaeldewildt/master

Fixed "oneBy" magical finder
Merge pull request #3 from michaeldewildt/master

Implemented last magic finder and return the last object in a collection
Wrapped autoload in a function to not use $classloader at a global
scope.
Refactored classloaders to play nice with other classloaders
Added ResultSet->fields() to return a list of columns in a resultset.
Fixed bug in ResultSet::fields() when there is no resultset
(updates,etc)
Mysqli::Connection now throws a properly typed Exception.
ResultSet->fields() now returns a Fields object.

Previously calling fields returned an array of fields. Turned out this
was very expensive performance-wise. Mostly calling code needed a count
so the new Fields object returns the count without needing to
materialize the actual fields.
Optimized Fields object further, fields are fetched one by one.
Binder can now handle strings with question marks inside quotes.

Previously the algorithm simply replaced question marks inside the bind
string. This failed where the bind string had quoted strings that
contained question marks within them. The new algorithm is much more
complicated, but should be more bulletproof.
Fixed bug with parsing escaped quotes in the Binder
Fixed bugs in the Binder with handling of escape characters within
quotes.
Fixed a bug with quotes in quotes in binding
Mysqli\Exception extends from the correct base class.
Added a Mysqli\Connection->close() method
Remove halt_compiler to avoid segfaults on lucid
Improved cpu usage of parameter binding in Binder.
Added a table-based api for mutators.

For instance $table->where('isdeleted=0')->delete().
Better error messages for binder
Fix bug where certain quoted strings don't bind correctly.