Adding I think the right kernel for sparse mat * vec

also adding constructor for SparseMatrix to build it from some existing
arrays, need to test this kernel yet though