Add a websocket signaling server impl

PTAL
(Sorry for the previous abandoned requests. I'm new to the github work flow and messed up the repository)
Would it make more sense to return an "error" and then non-nil error means failure?  That's how most Go code works.