adding files that brian forgot and rewriting some coroutines to use Futures rather than Callback/Wait (it is so much more elegant and now we can use timeouts)