A producer MUST be able to handle a message async without returning a response.
A producer MAY also support future response by resolving the passed $deferred.
Note: A $deferred is only passed by a QueryBus but in this case the $deferred
MUST either be resolved/rejected OR the message producer
MUST throw a Prooph\ServiceBus\Exception\RuntimeException if it cannot
handle the $deferred