move to futures-based websocket communication