MessageListener moves to public API and becomes MessageConsumer
All message consumers share the same infrastructure for consuming
Followers are MessageConsumers by default
MessageConsumers can now be stopped more easily
Followers are all just another MessageConsumer now
MessageMetricManager -> MeasuringConsumerManager
Make sure messages are never delivered after the consumer is stopped
Don't force users to implement the whole MessageConsumer contract
Fix various Findbugs stuff
CommonFollower is a MessageConsumer by default