Shape is too obvious to test.
Two functions, addable and multipliable requires the shapes of two matrices. This makes test easer.
Two functions, addable and multipliable, need tests because they are used by all matrix types to validate their shapes.
Shape.String method is used for debugging.