Cater for empty responses when performing http content compression

We need to take into account an empty response when performing content compression. Per rfc 2616, 4.3 Message Body:
> All 1xx (informational), 204 (no content), and 304 (not modified) responses MUST NOT include a message-body.

We explicitly check for these responses and set the state to PASS_THROUGH. EmptyLastHttpContent should reset the state machine back to AWAITING_HEADERS.

This fix an issue in chrome that resulted in the browser hanging due to unexpected responses. See #3070 for context.
I think we should try to combine this check with the `res.getStatus().code() == 100` check above.