Bug fix in __imul__, copy data when constructing sparse matrix