nsqd: add deflate compression negotiation:

* add --deflate and --max-deflate-level flag
* add feature negotiation for nsqd clients
nsqd: add framed snappy compression
nsqd: add/use DefaultBufferSize
nsqd: re-org, move flush into client

* drop defer in fast path
update test/dist dependencies
pull req comments