Laying groundwork for snappy, deflate and TLS sockets

Though not supported, I wanted to articulate the plan for having `TLS`, `snappy` and `deflate` support.