timeoutsocket enables a timeout mechanism on all TCP connections. It
does this by inserting a shim into the socket module. After this module
has been imported, all socket creation goes through this shim. As a
result, every TCP connection will support a timeout.
The beauty of this method is that it immediately and transparently
enables the entire python library to support timeouts on TCP sockets.
WWW: http://www.timo-tasi.org/python/timeoutsocket.py
Author: Timothy O'Malley <timo@alum.mit.edu>