Updated to work with django 1.6's custom user models.

Also made it possible *not* to create a user when it doesn't
exist on authenticating.
Merge