No very good reason, but I've occasionally wanted to frob it to see if it
makes any difference to problems I'm having, and it was easy.
Tested that it does actually cause keepalives on Windows (with tcpdump);
should also work on Unix. Not implemented on Mac (does nothing), but then
neither is TCP_NODELAY.
Quite a big checkin, much of which is adding `keepalive' alongside `nodelay'
in network function calls.
[originally from svn r4309]
platform_new_connection() worked fine, but the really simple stub
version for the other ports fell over horribly because I got its
name wrong. NEVER ASSUME YOU'VE DONE THE EASY BIT RIGHT.
[originally from svn r3166]