#22 Add events on Consumer and RpcServer

Implemented events in consumer class.

Logger is not a consumer dependency anymore.
Callbacks and logger are not required, but compatible with the old configuration.
The result for deliveryCallback is the return value of the last listener. It's possible to set the right priorities or to stop execution in the listener.

I've done some little refactoring and tests.

I don't know. I think it's better like this because I would like to stop the trigger execution just if the listener need it. So every listener can attach on this event and return a value. On default, the last listener return the value of the callback, but if a listener needs to block other listener, it can stop execution, and will be used its return value.
This is my first idea, but... I need to think again about it.