Transition shortcut breaking changes

Addresses concerns raised in #13.

**This is breaking change to the API!**

@brianvh @charlierudolph please review when you get a chance.
I find this a bit odd. `go` is a valid event but its just not applicable to the current state of the machine. I would think this would throw the same error `transition!` throws when that transition is not applicable to the current state of the machine.