How to use:

consumer = KarlMalone::Consumer.new(callback_object, callback, exchange_opts, queue_opts) consumers = [consumer] broker = KarlMalone::ConnectionBroker.new(consumers, options={}) broker.start!

Maybe have a 'register_consumer(consumer_options)' function that wraps the consumer creation?

TODO: publish Guaranteed delivery on publish Integration specs with rabbit, separate rake task