CancellationToken.Register call to WebSocket.Close

NetworkStream's async methods are not cancellable despite of accepting
cancellation tokens, so when the application was shutting down the
sockets were let on their own. Now the cancellation will tear down the
whole socket. So it is not possible to just cancel a read/write
operation (neither was before), but at least now the connections are
properly tore down.