anchor.diff:  matrices, `Vector` for nx1 matrices, and `Vector2` for 2x1
   matrices.
   
  -.Type Safety
  +== Type Safety
   
   Classes of this library ensure that any `Matrix` object
   that is created will implement the subtype that
  
positive.code: multiplying a 3x4 matrix and a 4x3 matrix will result in
  a 3x3 matrix that can be cast to type `Matrix3`.
  
  .Creating Instances
  
  Default implementations of the matrix types can be
  constructed using the `MatrixFactory` class. All functions
  
negative.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.
  