We have three levels of identity as enumerated below. Note that these
form a hierarchy: a particular user may be logged on using multiple
browsers which in turn may have multiple SWISH windows opened.
Any open SWISH window has an associated websocket, represented
by the identifier returned by hub_add/3.
Any browser, possibly having multiple open SWISH windows, is
identified by a session cookie.
The user may be logged in, either based on the cookie or on
HTTP authentication.