INT-2936 Fix TCP Binary DeSerialization with NIO

Inadvertent sign extension on binary data with bit 7 set
causes early termination of binary deserializers.

The ChannelInputStream (which replaced the piped input
and output streams) failed to mask off the top 24 bits
of "normal" bytes received, causing Deserializers to
believe the stream was closed.

Add a mask of 0xff to bytes read.

Add a test case.
Merge pull request #749 from garyrussell/INT-2936

* INT-2936: Fix TCP Binary DeSerialization with NIO
INT-2937 Fix Race Condition in MGS Reaper

Groups changed within the same millisecond that they
were selected for reaping can cause aggregators to
emit duplicate messages.

Use the re-fetched group (used to see if the timetamp
changed) instead of the group passed in to forceClose
(the group might have changed since it was selected as
eligible for reaping).

We still retain the last modified check because it
might have been expired using timeoutOnIdle.
Merge pull request #751 from garyrussell/INT-2937

* INT-2937: Fix Race Condition in MGS Reaper
INT-2947 Update gateway.xml With Sample Link

Very minor change - provided a link to the github
location of the async-gateway sample being referred to

Polished to add some line breaks.
Merge pull request #757 from bijukunjummen/patch-1