wrap for triangular matrices
Upper and lower triangular matrix transpose into each other
add ATriangularMatrix base class
refactor common code into ATriangularMatrix
Allow arbitrary shapes for triangular matrices
correct docs