- factored out completeGroup and expireGroup methods
- cleaned up imports
- some formatting
- added javadoc to CorrelationStrategy
Note on the CorrelationStrategy changes:
According to Postel's law it is right for the CorrelatingMessageHandler to do a null check for the result of the CorrelationStrategy, but it is also a good idea to throw a more meaningful exception from the strategy itself. We cannot enforce this in the contract without inconveniencing the users, so we don't.