For all the parallel test runners, provide a pure-Python mechanism for timing out dotest inferior processes that run for too long.
Stock OS X and Windows do not have a built-in timeout helper app. This allows those systems to support timeouts. It also transforms the timeout from being implemented via a system process to costing a single thread.
Tested on Linux and OS X with positive timeout verification.
Greg: this also comments out one of the curses cleanup calls into keyboard handling. I found that always hung the test shutdown on the curses runner. (Attached with a python debugger to verify).