Revert change: buffer overflow was symptom not cause

The real cause of the buffer overflow problem was when a messageset was
returned the got cut off by the maxbytes in a fetch request.  This would
cause the last message in a messageset to be mal-formed.

I am reverting this back to a basic read because the message should
define how much should be returned in the stream.  I am adding an
Available check method which the consumer of the stream object can use
to ensure there is enough space to read a certain byte size.

Preventing a read problem throwing here simply caused the problem to
move up to somewhere else in the code.
Change Message set decode now uses available function.

The message set decoder now protects against no available space for a
read operation by using the available function.  This protects against a
Maxbytes limit, which malforms the last message.  There may be other
places where this function needs to be used.
Fix early break in consumer when dispose is called.
Add url information in verbose debug logging.
Fix ProducerConsumer tests all passing

There is still some work to be done on these tests, but each one passes.
Fix integration tests all passing.

Also updated the name to reflect integration in the class name.
Add documentation from the official wiki site
Add missing project addition checkins
Cleanup set one test to ignore and removed commented code
Fix one consumer test, removing unused code.
Fix test for GZip integration.  All working and passing.