DelayedCall.__str__(): use the actual class name
Document waitForDeferred better
Streamline hostname lookup

Just use the "blocking" resolver in a greenlet.
gevent.monkey already patched it appropriately.

Hijacking the ThreadedResolver introduces too many dependencies on today's
implementation in Twisted.
more changes to be able to virtualize time
Eliminate busy waiting and handle client+server in the same process

This requires a separate greenlet per dispatch, which probably does
lots of good things but does NOT speed up RPyC. Sorry.
rpyc: return silently on EOF
rpyc: remove two debug strings
Don't commit seppuku on channel close

recv loop cleanup: don't poll, gevent does that for us