Integrated George's login page design. Smoothed the login process and error reporting a bit. Remove the user's session auth details if an authentication or connection error occurs. Caught socket.gaierror which can occur for example when the user enters a domain that does not resolve.
Correctly catch the authentication error where no credentials are supplied.
Indentation nit.
Ability to display errors from the server wherever needed. At login display them just under the login form.
Design tweaks for signout message.
Put optional detail in error messages, available on hover.