202 range checks

Sending this before doing all of the Matrix range checking to see if this is on the right track with what you had in mind. I tested the individual `ensureIndex` method but did not add tests for each method on `CompressedVector` that calls it. If you would like to me add those tests I can.
I think we should name it `ensureIndexIsInBounds` and put it into `SparseVector` abstract class.