Allow calls to Instance.evaluate in action callback
Calling Instance.evaluate in an action callback now adds the passed event to the deferred event queue for processing after the current run-to-completion step has completed.
Also passed the current state machine instance as a second parameter to the action callbacks.