INT-2861/INT-2862 TCP Outbound Gateway Fixes

__INT-2861__

Close connection after 'remoteTimeout' because the
socket is dirty (may contain an in-flight reply).

Add test that demonstrates the problem and that it
is resolved.

__INT-2862__

Remove entries from pendingReplies (map of async responses
for which we are waiting).

Add an assertion to the above test to ensure cleanup.

__cherry-pick to 2.1.x required__