Thanks, this is a very good job so far. I do have one question, though.
What is your reasoning for having the upward-facing arrow /\ serve as the descending sort and downward-facing \/ as ascending? It feels backwards to me and a bit counter intuitive.