MongoEventStore sorting

Change MongoEventStore sort parameters to ints.  Corrects snapshot event
sorting.
Merge pull request #70 from andyduncan192/eventstore-sort

MongoEventStore sorting fixed
Fixed tests
Added support for injection of Spring beans in annotated handlers

Methods annotated with @CommandHandler and @EventHandler are now inspected by
the SpringBeanParameterResolverFactory, which injects Spring beans as method
parameters. It is automatically enabled when the <axon:annotation-support/>
element is used. Otherwise, configure the factory is a bean to enable support.

Issue #AXON-25 Fixed
Added support for custom command gateway

Developers can now create their own gateway by defining methods on an
interface. The parameters, return type and declared exceptions define the
exact behavior of the gateway.

Issue #AXON-21 Fixed
Minor javadoc fixes
Added SimpleResourceInjector in core module

The SimpleResourceInjector allows simple setter injection to be done on Saga
instances. It is simlar to the default injection mechanism in the Saga test
fixtures.

Issue #AXON-16 Fixed
Created SimpleResourceParameterResolverFactory to inject resources

This implementation allows for simple programmatic configuration of injectable
resources. It is used by the test fixtures to allow configuration of resources
that need to be injected in Command Handler and Event Handler methods.

Issue #AXON-26 Fixed
Fixed copyright notice in sources
Fixes issue that Distributed commandbus would not properly sync on recovery

When a connection between nodes (and especially the gossip router) was lost,
the nodes would not properly synchronize their state when the connection is
recovered.
Now, each member will send its membership information to any new member joining
the group.
Issue #AXON-20 Fixed
Updated Disruptor dependency to 2.10.1
Logging improvement
Modified generics on Meta Data to make it more flexible
CommandGatewayFactoryBean can now also be used for custom gateways

The factory bean allows configuration of a gateway interface. If one is
provided, it generates a gateway for that interface. Otherwise, it defaults to
a CommandGateway implementation.

Relates to issue #AXON-21
Added CommandDispatchInterceptor support to DistributedCommandBus

Issue #AXON-24 Comment
Reverted the state synchronization logic in JGroupsCommandBusConnector

Just to make sure that all members are always properly synchronized, they start
with a getState, after which each member sends updates. This way, if the
channel was already connected, but did not have a receiver configured yet, it
will always end up in the correct state.

Issue #AXON-20 Comment
ClusterBeanDefinitionParser validates cluster configuration

A <cluster> tag must contain at least one cluster selector, or be defined as
default. If neither of this is the case, the ClusterBeanDefinitionParser will
throw an exception.
Minor version updates
Improved error message in DistributedCommandBus
Added short wait-until-joined in send of JGroupsConnector

This prevents errors when a task is sending messages while a (spring)
application (context) is starting up. The send will wait at most 5 seconds
before raising an exception if it was not connected. Applications that use
proper synchronization of activities (start first, dispatch after) should not
see any changes.