Sort operator 3
I fixed a little bug in the interpreter (that Jeremy discovered) with the way the environment is handled when calling functions. I also tried finishing the 'Sort' operator optimisation, but it really requires quite a bit of special cases handling, which is very time-consuming. So it still isn't finished.