[JENKINS-22938] SSH slave connections die after the slave outputs 4MB of stderr, usually during findbugs analysis

The fix for [JENKINS-18836], [JENKINS-18879], [JENKINS-19619] was incorrect in its analysis.

- There is no call to getChannelData() on the new code path, so thus you cannot have two calls of freeupWindow()
- The problem with the original call to freeupWindow() is that it is on the receiver thread. You should not mix the responsibilities. Blocking the receiver thread to send a message will negatively impact performance and connection stability.
- The correct solution is to push the freeupWindow onto the async queue thus the ACK gets sent and the purity of the receiving thread can be maintained.