Order should trigger a sort iff order was changed

In response to https://github.com/jashkenas/backbone/issues/3199 this doesn't make sort fire if the order was unchanged during a `set`.

I'm slightly hesitant about setting `order = false` when `!orderDifferent` but since nothing actually did change wrt the order, it works.
The `order && order.length` check should be redundant here. `orderChanged` will only be true if order is an array with at least 1 model (lines 739 and 740).