Add virtual destructors to orderings using virtual interface
Ordering classes have a virtual interface that is used to reorder indices in some cases. The problem, as pointed in #134 (closed), is that these classes do not implement a virtual destructor as any polymorphic class should do. This MR implements it. I checked all these classes and places where the virtual interface is being used and nowhere I see any awkward memory management for this fix not to work.
Closes #134 (closed)