Robustness fixes

Create queues durably, so that messages aren't lost between a message broker restart and the start of our queue consumer.

Disable advance fetching of messages, so that one worker doesn't starve others.

This is the remaining robustness work for https://www.pivotaltracker.com/n/projects/1110932/stories/80019104
You can remove this expectation by setting the channel double to respond to prefetch: `double(:channel, prefetch: nil)`.  This way we avoid setting expectations that just serve test setup.