Better language handling.

Instead of magically setting the language based on some setting in the database, we now use the much better approach of putting the locale in the URL. The user can switch between the available languages via links in the header. This also means that guests can switch languages for the login form now. So this commit addresses issue #3.

All URLs will change because of that change. However, the app redirects to the user's set language when no language is given by the URL, thus keeping old-style URLs valid.

This is a major change, so give it a first version bump.