WIP: Expand test suite for triangular matrices and adjust triangular code accordingly.

I decided to ensure that all linear algebra code is covered by tests. Here is the expanded tests for triangular matrices. There is quite a few possible combinations of input to the methods.

The good thing is that the new tests revealed some issues with promotion and a severe bug (which?). The bad thing is that it makes the linear algebra test suite slower. However, the triangular tests are now in a separate file so the parallelisation should be better.

This request is still not ready as there are quite a few ambiguity warnings. I can make them disappear by splitting definitions with `StridedVecOrMat` into two definition with the same body, one for `StridedVector` and one for `StridedMatrix`. It appears wrong to me that this is handled different from the union. @JeffBezanson