add some docs, tests and row/mtx functionality