Sparse Matrix tested and typed
Add sparse processing as an option