Add some resiliency against race conditions during user creation.

Flicks has been seeing an issue where users accidentally trigger two
requests to the Verification view, which attempts to authenticate them
twice, simultaneously. This can cause a race condition in the 
authentication logic where a user doesn't exist when we check but does
exist when we attempt to create them.

This patch avoids this by catching IntegrityErrors during user creation
and re-fetching the user from the database. If the user still isn't
found, then we re-raise the IntegrityError; there's not much else we can
reasonably do.
ability to override Verify class
Review fixes.
Hey ya'll, it's a release!

Well, okay. I'm incrementing the version number because it's been 5
months and new functionality has been added, but I'm not quite happy
with things, so I'm not going to announce it to the mailing lists yet.

We really need to go through and clean up the API to remove unnecessary
settings, functions, etc. We also need to make JS testing actually 
happen, add real Python 3 support, etc. And it's time we did that
instead of adding new features. 

Onward!
Merge branch 'master' of https://github.com/mozilla/django-browserid
Adding __unicode__ method to BrowserIDException