error message when chrome extension is not available
Admin support, fixes #1

The admin uses its own login view that delegates to
django.contrib.auth.views.login. In order to make it use our login view
that checks for two-factor authentication, we monkey patch
auth.views.login. Our login view should be compatible with Django's, so
hopefully this doesn't break anything.