Remove references to the old name of the project (KMNS) and replace them by the new one (SubmatrixQueries)
Make some destructors virtual to ensure the entire destruction of the object they represent as they are often used in a polymorphic way.
Create a common class for the envelope trees (both row and col trees) in order to put some code in common.
Merge RowNode code into the new  EnvTreeNode subclass: use this new subclass to put all the common code of RowNode and ColNode in a common superclass.
Let ColNode be a subclass of EnvTreeNode in order to remove some useless code ...
Also change the code for the ExtendedRowNode class.
Make EnvTreeNode destructor virtual.
"Factorize" the code for merging envelopes. Thus we remove code duplication between RowEnvelope and ColumnEnvelope
Bugfix: typo that created a misbehavior when testing if two column envelopes crossed or not.
Merge branch 'unify_envelopes' of https://github.com/rbost/SubmatrixQueries into unify_envelopes