WebSocket implementation

Implements the [websocket protocol](http://tools.ietf.org/html/rfc6455) base on https://github.com/sta/websocket-sharp.

The `WebSocketListener` extends the `HttpListener` and handles incoming `Upgrade: websocket` messages.
It adds three events `WebSocketClientConnect`, `WebSocketClientConnected` and `WebSocketClientDisconnected` for incoming websocket connections and a `WebSocketMessageReceived` MessageHandler.

The listener automatically encodes and decodes `WebSocketMessage`s with the `WebSocketEncoder` and `WebSocketDecoder` which are wrapping the `HttpMessageEncoder` / `HttpMessageDecoder`.

The `WebSocketFrame` and its enums are almost identical to https://github.com/sta/websocket-sharp.

Closes #7