CommandGateways can now be configured with Callbacks using the factory

This is useful when a callback needs to be invoked for each command sent. With
this mechanism, that callback doesn't have to be passed via each method
invocation on the gateway.
If the generic type of the callback is detected to be incompatible with the
actual result of a command, the callback is ignored for that result.

Issue #AXON-242 Fixed