Fleshed out SparseMatrix.rb

- Made all properties readable, but not writeable
- Changed some runtime errors to ArgumentErrors
- All methods implemented
- TODO: Unit Tests