Sort choices only if order option is set

I noticed that choices are always sorted, also if no `order` option is set. I propose to sort only if the order option is set and keep the current order otherwise.
I also noticed that JavaScript isn't good at sorting unicode strings. In my german country select, i have countries starting with special characters (like Österreich) sorted at the bottom of the select.