Switch to custom REST backend.

As the Firebase backend provides no suitable authentication mechanism, we have
to switch to a custom backend. The user's authentication is now verified by
deriving an authentication token from the users password. This is done by
hashing the password 80,000 times with SHA-256. As calculating 80,000 SHA-256
hashes requires some time, the login screen is shown for a couple of seconds
after clicking "Login".