Communicating sequential processes for Twisted. Channels like Go,
or Clojurescript's core.async
