Use nose.
BUG: threadedclient.connect() slowed down by rogue join() in handshake_ok

join returns only after a thread exists so the call always timed-out,
adding a 1sec overhead per connect().