Initial implementation of the sparse matrix.

@bsoetaer 
Tests pass when the contracts are disabled.
Good point.  I'll implement `initialize_copy` in the Vector Builder Hash.