Provide new multiplication methods for Diagonal matrices

- Provides A_mul_B!, At_mul_B! and Ac_mul_B! for A::Diagonal
- Renames Ac_mul_B and A_mul_Bc to Ac_mul_B! and A_mul_Bc! for A::Triangular (to reflect mutation of B)
- Provides A_mul_B! for A::Triangular
doc: fix pdf build
doc: add latex-cjk-all dependency to README
doc: update helpdb.jl
remove nonexistent modpi,modpio2 from docs
remove some unused code
Better type inference for cat of arrays of different eltypes

We now infer the element type but not the dimensionality