Nevermind the above, I always forget how small the iterable trait is, but can we move to sparse representation?

`Iterable[(Int, Int, Double)]`

(Row, Col, Val)