canTerminateInStepsRemaining moved to trait's impl