Track websocket consumers, expose them via an admin endpoint, list th… (#235)
…em in the UI, clean up connections when they stop responding
