python state machine vs transitions