separation of search order functions
improved separation of search order
improved interface for choosing search order in congruence algorithm