Add a generative test suite and fix errors found by tests.
Add some benchmarking functions for sanity.
Add single arity for constructing a matrix from an existing matrix.
Remove destructuring from function signatures.