add searching and paging for admin promotions area

This is a cherry-pick of a commit that I previously got added to spree/2-2-stable: 9606cff

I also updated the commit to supply a default sort order, and submitted a PR to spree for the same thing for 2.2.
we need something to sort by if we want consistent & predictable pagination.
none of the promo fields are indexed so let's just sort by id with most-recent first.

Conflicts:
	backend/app/controllers/spree/admin/promotions_controller.rb