Fix `Connection` memory leak

Analysis of a heap dump from the live main server disclosed that over 20,000
`Connection` objects were present in the heap. A `Connection` object should
only exist for a current connection to the server, so this indicated a
rather large memory leak.

The problem turned out to be that all `Connection` objects are retained in
a global `connections` array in users.js and never deleted from that arary,
and hence, are never garbage collected, even after no `User` object is using
the connection. Each `Connection` object was also retaining a
`SockJSConnection` for additional memory leakage.

In the heap snapshot, `Connection` objects were using ~11% of the server's
memory, and this was on a server that had been running for only 9 hours.
After running for days, the `Connection` objects were probably taking up a
very large ratio of the server's memory.