Support for event triggered transitions

implements #31 and #56 , similar functionality to aasm
Frankly Im not sure what to write here... events [are](https://github.com/aasm/aasm#usage) [pretty]() [standard](https://github.com/pluginaweek/state_machine#example) [in state machine libraries](https://github.com/sebpiq/backbone.statemachine#triggering-transitions) so no explanation is needed. IMO, If anything the primary example should use events