Divided matrixPowers kernel into two parts: a mapper and a computing section

It is faster than the standard implementation if s is small
Added flexibility in array sizes for some basic linear algebra functions
Improved smvp implementation
Made TSQR less problematic when you have a short matrix relative to the block size
Tested previous commits
Merge branch 'Ben's-Branch'