stability checker, linear system creator, sgd, condition estimation

Hmm I see -- I can see a solution for this (but I'm not super satisfied). We can take in an Option[DenseMatrix[Double]] as the argument. For example `def condEst(R: Option[DenseMatrix[Double]] = None) = {`

So if somebody calls condEst() then we can compute R first and then return the estimate -- if somebody passes R in we can just use that.