anchor.diff:  multiplying a 3x4 matrix and a 4x3 matrix will result in
   a 3x3 matrix that can be cast to type `Matrix3`.
   
  -.Creating Instances
  +== Creating Instances
   
   Default implementations of the matrix types can be
   constructed using the `MatrixFactory` class. All functions
  
positive.code: NOTE: Matrices returned by `ImmutableMatrix` objects from `Matrix`
  functions (e.g. `transpose()` or `plus()`) are _not_ immutable.
  
  .Displaying Matrices
  
  The `MatrixPrinter` class can be used to produce human-readable
  representations of matrices.
  
negative.code: matrices, `Vector` for nx1 matrices, and `Vector2` for 2x1
  matrices.
  
  == Type Safety
  
  Classes of this library ensure that any `Matrix` object
  that is created will implement the subtype that
  