HTTP/2 to HTTP priority translation

Motivation:

The priority information reported by the HTTP/2 to HTTP tranlsation layer is not correct in all situations.
The HTTP translation layer is not using the Http2Connection.Listener interface to track tree restructures.
This incorrect information is being sent up to clients and is misleading.

Modifications:
-Restructure InboundHttp2ToHttpAdapter to allow a default data/header mode
-Extend this interface to provide an optional priority translation layer

Result:
-Priority information being correctly reported in HTTP/2 to HTTP translation layer
-Cleaner code with seperation of concerns (optional priority conversion).
@nmittler - It may make it more complicated but I think more importantly I would like to understand the user interface implications.  It seems like your suggestion lends itself to the user instantiating 2 different classes in the pipeline `InboundHttp2ToHttpAdapter` for the minimal behavior or something like `InboundHttp2ToHttpAdapterWithPriority` to also get priority events?  Do we want to expose 2 different http to http2 translation classes, or am I misinterpreting your suggestion?

Also sorry but I squashed and pushed to resolve your previous comments.  This comment is now on a modified line.