Django friendly finite state machine support

django-fsm adds declarative states management for django models. Instead of
adding some state field to a django model, and managing its values by hand,
you could use FSMState field and mark model methods with the transition
decorator. Your method could contain the side-effects of the state change.