Version for review, mostly done, sorting includes invasive class across the board