Move from Finite to SM

Replace the Finite state machine with SM state machine, which is mine: https://github.com/winzou/state-machine

The pros:
* Much faster: the way I designed the state machine is lighter than Finite
* All our needed features are included (no need to use the repository trick in composer)
* Enables us not to be dependent on Finite, but on SM so our needs will be understood and implemented :)

The cons:
* More work for me to maintain this lib, but this is a small one and it shouldn't take to much time