Split the DSL part with the Connection links in the Machine class. DSL part moved to SimpleMachine. Added HookableMachine to allow instances of StateMachine not derived from Connection. Added tests
Removed dependency to simple_mock so it can build also on 1.8.7
Merge pull request #2 from nessche/split_machine

Split DSL/State machine functionality from Connection-dependent aspects