Add nicer error handling to login form.

This involved flashing messages based on what went wrong and then
showing these in the login views if they existed. Also added display
of password errors to the same view.
Add redirection upon attempting to access a login protected page.
Add more models.

For things like transactions, flocks, etc.
Add more sophisticated login/dashboard, make homepage functional.