Finds the highest priority valid transition, information pass via the OutPotentialTransition variable. OutVisitedStateIndices will let you know what states were checked, but is also used to make sure we don't get stuck in an infinite loop or recheck states