finished implementation of MatrixObject. need to test still