I abandonned introducing autoAck mode because it does not seem useful
and could even be dangerous. But I made a few other minor changes which
are useful, so I will keep this branch.
Implemented acknowledgement algorithm AFTER_PUBLISHED_TX.
Started work on pubisher acknowledgements. I want to commit here for
backup because I want to change the call signature of
RabbitMQProducerHelper.handlePublish() and I don't want to get caught
half-way through the changes with code that does not work.
Implemented much of acknowledgement mode AFTER_PUBLISHED_CONFIRMED", but
still need to process the unconfirmed publisher confirms map by the
ConfirmListener.
Finished implementing acknowledgement mode AFTER_PUBLISHED_CONFIRM,
except I still need to ensure that the producer threads do not 
terminate until the "pending confirms" map is empty or a specific
timeout period is occurs.
Acknowledgement mode AFTER_PUBLISHED_CONFIRMED seems to work after I
fixed a multi-threaded access problem for a synchronized data structure.

Next I will remove the test code I wrote to locate this problem, but I
want to commit everything in case this code removal actually causes a
problem.
Implemented acknowledgement algorithm AFTER_PUBLISHED_CONFIRMED.
Merge branch 'feature/PublisherConfirms' into develop
Started work for moving code from RabbitMQConsumerHelperPassageTest1 to
RabbitMQConsumerRunnable. To go further, I will modify multiple classes
and to avoid getting stuck with code that no longer runs, this commit is
more of a savepoint so that I can come back to a safe point, if
necessary.
Moved more code from RabbitMQConsumerHelperPassageTest1 to
RabbitMQConsumerRunnable. Committing for backup so I have a safety net.
Finished moving code from the implementation-specific consumer
"heper" class to the generic consumer "runnable" class.
Merge branch 'feature/MoveCodeToConsumererRunnable' into develop