HTTP/2 Data Decompression

Motivation:
The HTTP/2 codec does not provide a way to decompress data. This functionality is supported by the HTTP codec and is expected to be a commonly used feature.

Modifications:
-The Http2FrameReader will be modified to allow hooks for decompression
-New classes which detect the decompression from HTTP/2 header frames and uses that decompression when HTTP/2 data frames come in
-New unit tests

Result:
The HTTP/2 codec will provide a means to support data decompression
@nmittler - I'm not sure if we should try to recover in case we detect the end of stream at a later point, but I'm not sure what we would do to recover?  For example is is appropriate that while we are cleaning up if this was the last data event to happen then we send an empty data frame before cleaning up?  I didn't implement this because I feel like we are in an error condition and that may mask or make the situation more confusing.  WDYT?