Add ordered_by_name scope to WorldLocation

Sorts worldlocations by name using the I18n.defualt_locale translations regardless of the current I18n.locale.  Wherever we were just using .all or doing a manual .sort_by(&:name) we now use this scope.
Make WorldLocation.all_by_type order by name within each type group

Note: this mixes sql(order) and enumerable(group_by) and I'm relying on group_by to maintain the order returned by the sql.  There's a test though, just in case.
Add existing UI for filtering by location to Publications index