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

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