Use custom finder for :has_many :hostgroups to fix ordering bug

using custom finder_sql instead of :has_many, :through since :order on hostgroup
queries doesn't work (Hostgroup overrides default_scope to order by label -- this
can't be undone here because .except(:order) only works on queries, not in :has_many
and unscope doesn't work in rails 3). Without this, Hostgroup ordering for
orchestration is off.