Drop dependency on old IO library, include MatrixWriter base class