Adding sparse versions of DiagonalScale, DiagonalSolve, and DiagonalScaleTrapezoid, as well as adding code for forming the normal equations version of the Newton step for IPMs for LPs