Ensure selection is sorted before removing rows
Ensure selection is sorted before removing rows

QModelSelection appears to be ordered based on the order the user
selected elements, which caused a bug when deleting datasets due to the
order of deletion not being last to first.

Strangely there doesn't seem to be a standard way to pass the entire
selection efficiently to the model's `removeRows()` function.

JoshChristie/displaz,JoshChristie/displaz,JoshChristie/displaz,JoshChristie/displaz,JoshChristie/displaz