RavenDB-2401 Ensure auth for WebSockets changes

-Use a token from the server to initialize a new web socket.
-Since we can't change the headers of a web socket, send the token in the query string.
-Close web sockets when moving between databases/filesystems/counters