Actually, here's a possible compromise:

* Don't allow arbitrary order to start with
* Implement this if we feel that it leads to convoluted calls to the class

This would be better because adding flexibility is easier than taking it away. What do you think?