Implemented LQ facotrization, questions about API

I implemented the LQ factorization and the minimum norm solver with calls to the blas engine.
For efficient solutions I think LQ and QR have to be implemented separately. LQ is probably more efficient in general because of the row major storage. The vectors describing the reflections are then actually in a continuous memory block.

I added an ApplyQ method which replaces the *Dense argument with its multiplication by Q (or Q^T). This would probably also be useful for the QR factorization.