removed simulate method.  refactoring also fixed bug in which if you fire a custom event that has not been registered, the script no longer fails