Messing around with adding compression flag, WIP

I started adding support for turning on compression. I set it up as another async op. Right now it doesn't work right with multiple connections, what I need to do is ask the other connections to also enabled compression. Or I could set a BOOL and on the next reconnect turn on compression.

Or should we automatically enable this stuff after a capability request that shows compression support?