Merge new implementations from messing branch - spr2 & spmv

-Added/tested spr2
-Added/test spmv