after RP!.ReducedBasisOfRowModule/ColumnModule we check if the result is equal to the input

in this case we return the input matrix as we might know more about it
(and to save memory)
added caching to GetColumnIndependentUnitPositions/GetRowIndependentUnitPositions

(HomalgExternalCallCounter dropped by one in Purity.g)
added support for PartiallyReducedBasisOfRowModule/ColumnModule

to be used in the methods for the attributes
- ReducedBasisOfRowModule
- ReducedBasisOfColumnModule
(this allows using Singular's mstd and MAGMA's MinimalBasis routine)