fix order_by None in choices_for_values()

In the case where the django model has a default order_by, but you build a form with a different order_by and want to retain the form's order:

AutocompleteModel::choices_for_values() would silently re-order the values because filter() would re-order the values in `self.choices.filter(pk__in=self.values or [])`

So then setting the autocomplete model's order_by = None would not have the intended effect because the choices were already ordered according to the model's order_by.

This scenario is fixed by setting preventing filter() from ordering by appending an empty order_by()