A simple but powerful golang FSM library.