Added support for sparse matrices in manhattan_distances

There is an annoying transform from coo_matrix to csr_matrix still in the sparse algorithm that is costing about a 1/3 of the total runtime. The problem is I don't know how to get rid of it. This is especially stupid for large matrices that are summed up in slices.