State Machine Implementation à la Moose