FIX incorrect sorting during fancy assignment

Bug reported by @perimosocordiae on #3264

One of the tests added here fails on master in `TestCSR.test_fancy_indexing_multidim_set`
If do_sort is just a check as to whether we might be violating assumptions about the user input if we returned it unsorted: if we get sorted in, we return sorted, otherwise we don't care. So already has_sorted_indices = False if do_sort = False.