new()
bindTransition(canEnter:() ‑> Bool, fromState:State<T>, toState:State<T>):Void
setInitState(state:State<T>):Void
syncTransitions():Void
update():Void