Refactoring HTTP/2 Flow Control interfaces.

Motivation:

The terminology used with inbound/outbound is a little confusing since
it's not discussed in the spec. We should switch to using local/remote
instead. Also there is some asymmetry between the inbound/outbound
interfaces which could probably be cleaned up.

Modifications:

Changing the interface names and making a common Http2FlowController
interface for most of the methods.

Result:

The HTTP/2 flow control interfaces should be more clear.
Just to clarify...`Eww` was not due to your detection of this or how you handled it but just me realizing the difference :)

Looking at your `ConsumedBytesConverter` changes this should be fine.  If possible it would be nice to avoid the "one time set boolean" to do initialization...but I think we still have the race condition to account for as when the FlowController object is created. I can't think of a clean alternative ATM....