Attempt to tackle more subtle bugs in the search ordering behaviour.

 - Default search ordering fallback is now a separate parameter
   to the find() function, which makes it easier to override
 - The search order isn't added to the search form unless it's actually
   in the parameters