Skip loops in cdap.apply_final_rules
Skip loops in cdap.apply_final_rules

It's easy to check whether any of the rules even apply
before starting to do all the looping, so this does a bunch of checks
of that and continues if nothing applies.
Big performance improvement, but probably not enough to justify keeping
the final rules idea.

bhargavasana/activitysim,synthicity/activitysim,bhargavasana/activitysim,synthicity/activitysim