Added the matrix builder contracts...

along with simple test cases to exercise each of the contracts.  Additionally, added a simple implementation of MatrixBuilder for constructing complete matrices.

Also added the file `matrix.rb` for adding the matrix contract to the built-in Matrix class.
@bsoetaer 
Yeah, I agree.  I'll do that in a separate task.