Added a subscriber to easily mock the results of a command.
Merge pull request #11 from jeremeamia/result-mocks

Added a subscriber to easily mock the results of a command.
Fixed incorrect class type hint
Merge pull request #13 from RobinvdVleuten/master

Fixed incorrect class type hint in docs.
Updating event system to be able to emit errors

I've updated the event system to be able to emit CommandExceptions encountered
while preparing commands, transferring requests, and processing commands. This
change makes the Command layer behave in a similar manner to the HTTP layer.
When a CommandException is encountered while preparing a command, the error
event is emitted for the Command, allowing listeners to handle the problem
before an exception is thrown. This type of evented error handling is required
in order to be able to send commands in parallel or in batches.

I'm still working on testing, but this is the start of the WIP branch.
Fixing event classes
Adding the ability to get the transaction to allow listeners to easily throw exceptions
Adding the ability to pass in context in constructor
Ability to get transaction from exception and setting response in request error event
Fixing CommandToRequestIterator