Order by desc

When we have a Union_Ordered, sometimes we need to compare the different values of the union (e.g. if we're sorting over it). This causes the index to preserve that information.

I'm going to refactor the determineOrderEffectiveness method shortly to have less nested if/for/if stuff going on and open a second PR for that.
I just added the exception to test if anything ever had getIndexColumn called in our tests, and it wasn't hit by the optimizer tests. (I can't remember if I ran it with PostgresMiscYamlIT)