add optional crashed state to the decorator

This adds an optional "crashed" state to the decorator.

When the calling function raises an Exception and the crashed parameter is set in the decorator, the state will change to the crashed state. If the crashed parameter is not set, then the state is unchanged and stays at its original state, which is the old behavior.

This commit is backwards compatible with django-fsm v2.0.1, so all existing users of django-fsm do not have to rewrite their code when this is cut into the next release.

See the tests for an example on how to use this new parameter.