.transpose() reimplemented with MatrixSource proxy

The tests pass on my machine.