Print test program DEBUG messages with OutputDebugString in Windows.
Fix warning.
Use non-zero timeout for socket select whenever waiting for expected data.
Shut down request socket more cleanly.

Call `shutdown' with SD_SEND, then poll `recv' until it returns 0 to
indicate the client has done its side. Since the server initiates the
close, it ends up with a TIME_WAIT socket, but see http://www.serverframework.com/asynchronousevents/2011/01/time-wait-and-its-design-implications-for-protocols-and-scalable-servers.html,
suggesting it isn't necessarily a major issue for yhs.

This fixes ECONNRESETs when the python test and server are both running on
non-virtual Windows 7.

(Should maybe just bite the bullet and implement chunked transfer and
persistent connections, so the client closes the socket.)