Implemented account creation and authentication.

There is still no dashboard, but users can create accounts and login.