Added the option to set the logical name of the channel that will be created.
Fix for handling of empty lists of eventmessages

DocumentPerCommit strategy throws exception when dealing with empty
lists of event messages.

java.lang.IndexOutOfBoundsException: Index: 0, Size: 0
    at java.util.ArrayList.RangeCheck(ArrayList.java:547)
    at java.util.ArrayList.get(ArrayList.java:322)
    at org.axonframework.eventstore.mongo.DocumentPerCommitStorageStrategy$CommitEntry.<init>(DocumentPerCommitStorageStrategy.java:178)
    at org.axonframework.eventstore.mongo.DocumentPerCommitStorageStrategy$CommitEntry.<init>(DocumentPerCommitStorageStrategy.java:144)
    at org.axonframework.eventstore.mongo.DocumentPerCommitStorageStrategy.createDocuments(DocumentPerCommitStorageStrategy.java:89)
Moved empty check for event stream to MongoEventStore

The event store shouldn't call the CommitStrategy if the stream of events to
commit is empty.

Issue #AXON-176 Fixed
Minor code style issue
Fixed potential issue with ReplayingCluster calling ReplayAware methods twice

When a handler has been subscibed twice, it's replay-aware methods would also
be called twice. This has been fixed to ensure subscribing an already
subscribed handler really has no side effects.
Fixed issue with callbacks in custom command gateway

In the custom command gateway, callbacks weren't properly invoked when the
method didn't have declared exceptions or return values. This has been fixed.

Issue #AXON-177 Fixed
Merge branch 'AXON-173' of https://github.com/markdingram/AxonFramework

Added assertion in test case and warning about channel name uniqueness in
javadoc.

Issue #AXON-173 Fixed
Indexes for mongo snapshot collections
make axon artifacts OSGi compatible
Added OSGi configuration to all remaining modules

The maven-bundle-plugin has been configured to import and export the correct
packages. Some mandatory dependencies might have been marked as optional.

Issue #AXON-179 Fixed
Fixed issue with caching and nested units of work

The bug would cause a nested unit of work to act on an older aggregate,
retrieved from the cache.
The cache is now updated right after the aggregate state is committed (and the
aggregate is in a state to handle new commands). This would also solve issues
where the aggregate is stored in an off-heap cache.

Issue #AXON-180 Fixed
Fixed issue with nested UoW and event ordering

The order of events were wrong when using 3 layers of nested events. When using
a cache, the events were also out of order when appending to the event store.
This is solved by registering nested UoW with the root UoW instead. The root
UoW maintains event publication order.

Issue #AXON-180 Fixed
Improved UoW handling of published events

"Manually" publishing an event via the UoW would not properly roll back the
event when the UoW was rolled back. A nested UoW should be registered with the
root UoW, but events should still be managed by the active (i.e. child) UoW.

Issue #AXON-180 Comment
Created initial CONTRIBUTING.md
Delete CONTRIBUTING.md
Fixed NPE issue in JGroupsConnector

A NPE would occur in cases where a node sends a join message and disconnects
immediately. The receivers of the join message cannot map the origin of a
message to a node. The NPE did not affect behavior, but looked ugly in the log
files. Now, a nice log message is written.

Issue #AXON-182 Fixed
Added contribution guidelines
Removed circular dependency issue in AutowiringClusterSelector

The AutowiringClusterSelector is now self-initializing upon first request,
which removes a circular dependency when used in combination with the
DisruptorCommandBus.

Issue #AXON-186 Fixed
Added support for custom ParameterResolver for aggregates and sagas

Aggregates and Sagas are not (always) constructed in the control of Axon.
Therefore, it is not possible to inject a ParameterResolverFactory. For those
cases, there is now a AnnotationConfiguration class where one can register the
ParameterResolverFactory to use for a specific annotated type (or for all
types).

Issue #AXON-123 Fixed
Fixed another 'circular dependency' issues related to DisruptorCommandBus

When using the DisruptorCommandBus in combination with a JPAEventStore in
Spring, a circular dependency error may appear, depending on the order in which
the beans are declared. This commit solves that issue, by replacing constructor
injection of internal beans to setting injection.

Issue #AXON-186 Fixed