new sparse matrix multiplication that seems to work well (though with a parameter that must be tuned)