Changed streaming PUT to use an input stream instead of passing a dynamic channel buffer.
We found that with the channel buffer approach, the buffer was never actually shrinking.
Now we create a channel buffer equal to the size of a chunk and wrap an inputstream around
a FIFO of buffers.

Verifying that there was no impact on exception handling.