Improved comment

I misread a comment (at first) because it was phrased strangely, so I
improved the phrasing of the comment.
Makes SQLStore location independent.

For some reason this class still had some location dependent code...

It's not the best way to solve this, but it works for now and we'll just
have to see where it takes us once we start adding namespaces to the
generated classes.
Rolemodel now accepts unix file endings.

This is a small and quick fix to make sure it doesn't only accept Windows
line endings.
Improves handling of setting null on properties

For the generated classes, setting a property to null now automatically
calls makePropertyNull, which means that it'll actually work.
Fixed outer join problem

Changed from inner joins to left outer joins. This makes sure that rows
with a null value in a reference field are also selected, which makes
sense with out API.

Yet another victory for testing, as during the during the writing of tests
lots of bugs are found and most of them are fixed.
Fixes problem with handling null in queries

Queries were being written with "= NULL", which doesn't work. Now they
properly use "IS NULL".
Adds null support (database) for non-references

Along with the same problem the references had, there was also a bug that
prevented these from being inserted properly.
Another null fix: getting null datetime from db

It always wrapped it in a \DateTime object, meaning we would get a now
object instead of null.
Throw Exception on internal after all

It was standing in the way of getting 100% code coverage!
Fixes a number of bugs including #32

Fixesa #32 (extraneous updates), a bug it was covering up (circular
reference handling wasn't working), several simple bugs in that code,
which were caused by that code never having been run and a bug that just
got lost in the mess (extra fields being set in update)