Improved cohesion: worker catches browser exceptions and indicates
the kind of error to the communicator, which is the sole responsible
to deliver the appropriate error message to the end user and restore
the screen/cursor.
Also kicked out much of the logout functionality for readability
purposes. We'll re-introduced logout to the code base after the
beta milestone.