Created event signal

Fixes #58 

An event signal allows additional information to be passed to the state
machine along with an event.  The signal introduced with this commit is
just a guideline for other developers to create their own.