Refactored gauth authentication and user creation logic.
Refactored gauth authentication and user creation logic.

This change introduces a new setting, DJANGAE_CREATE_UNKNOWN_USER, which
replaces the previous settings which controlled whether the backend should
create a new user. DJANGAE_CREATE_UNKNOWN_USER defaults to False.

The logic is slightly different, in that it no longer raises an exception
when there is already a new user in the database but DJANGAE_CREATE_UNKNOWN_USER
is False.

The new setting is named to be consistent with the RemoteUserBackend flag
which controls similar behaviour.

grzes/djangae,grzes/djangae,kirberich/djangae,grzes/djangae,kirberich/djangae,kirberich/djangae,potatolondon/djangae,potatolondon/djangae