Much easier to follow movement determination. Each type of movement now has a state with clearly defined reasons for leaving that state.