* not be tied up with eventlet on the consumer side
* let the consumer code decide when to ack a message
(although maybe the concept of acking doesn't exist for all implementations?)
* not depend on a global singleton _RPC_IMPL
* leave out/refactor some unused or non-general aspects, such as multicall,
fanout_cast_to_server, notify, and fanout_cast (not so sure about that last one)
I'm happy to work on some of these but I probably can't do the whole thing.