socket: Unexport clientID

This isn't used anywhere else, so simplify the interface of Socket by
inlining a call to get the client ID.
socket: Simplify clientID generation

It's not clear to me why we were using this rather complicated method of
generating a UUID. Suffice to say that simply calling uuid.v4() has much
the same effect.
streamer: Add new streamer service

This commit adds a streamer service that abstracts interaction with the
streamer websocket.
Install and configure the streamer
Replace socket with streamer

Replaces direct use of the websocket with use of the streamer service
introduced in the previous commit.