refactor TerminationOrder, prepare for different order types

important refactoring, please merge. The aim is to introduce more options for termination orders, e.g., linear interpretations. I will do this quickly, you can then clean up ...