Add premessage-deflate extension handler for HTTP WebSocket

Add premessage-deflate extension handler for HTTP WebSocket.

Motivation:
- Need to compress HTTP WebSocket frames payload.

Modifications:
- Remove UTF8 checking of WebSocketFrames from frame decoder in order to
allow compressed frames to go to the next handler.
- Add a WebsocketPremessageDeflateHandler to initialize the frame deflater/inflater if client is compatible with deflate extension.

Result:
First version of the implementation for feedback.
calling retain() here sounds wrong.