Change single write timer to per-send timers
Previously, there was a single per-socket write timer that would get restarted for every new write. This turned out to be insufficient because the other side could keep reseting the timer, and never reading back the responses.
Change the single write timer to per-send timer which would in turn reset the TCP connection on the first send timeout.
Closes #3200 (closed)
Edited by Ondřej Surý