Don't ignore web/ anymore in .gitignore.
Throw away the old web interface. Say hello to the new (incomplete one).

This stuff needs to be then unbroken before we make a release.
Abstract away the user session semantics.

It used to be that the protocol semantics are tied to the WebSocket
implementation. Now I have made it so that the code that handles WebSocket
connection and code that handles the logic of session handling etc. are
separate.

This makes the code cleaner and easier to manage. Also, it makes it easier to
later add alternative frontends, should we ever want to do that for some
reason.
Update README.md

The README.md could still be improved. I thought it was badly written now that
I looked at it and tried to fix some things.

Also, it should be checked before release so that there is no outdated
information.