MQ Devel

Now we can use rabbitmq or other mq, this patch is for testing, not for production
I think what confused you here is that you have an immediate result to return, but `startConsuming`'s callers expect a Deferered.  This is an easy situation to deal with:
```
return defer.succeed(self.consumers[key])
```