Add a unit test for Matrix::submatrix().
Refactoring to extract an abstract base Colour class.