Adds hash function to CycleInfo and the necessary framework to let it be used in unordered_* things
Adds new submatrix method to IntMatrix which makes a submatrix from specified rows and columns. Also removes the unneeded parameters from IntMatrix.enlarge_matrix, which required changes in a few tests and extension_iterator.
Changes CycleInfo to ignore the orientation of arrows in the quiver. This required a change to the test CycleInfo.NotEqual, as that compared a tree to a cycle which was not a cycle when orientations were considered.
Adds OrientedCcyleInfo. This required fixing some problems in EquivalenceChecker and EquivQuiverMatrix which related to zero sized matrices.
Organises includes and adds some std::move commands where applicable