[WIP] Adding a way to easily work with the State machine lifecycle

## TODO

* [x] Add a callback handler
* [ ] Add Symfony EventDispatcher as an hard dependency
* [ ] Deprecate `ListenableStateMachine` and make the base State machine listenable
* [ ] Link ArrayLoader and the CallbackHandler to define callbacks from configuration
* [ ] Update the Symfony Bundle

(Inspired by @tortuetorche work here : https://gist.github.com/tortuetorche/6365575)