Use Regex against Facts for setting default hostgroup

This change would allow the use of a regex against any given fact rather that just the hostname of the machine. 

The first match found  as listed in the config would be applied to the machine. As ruby 1.9.x retains the order of a hash read from config, this should be a reliable way of establishing the priority.

Eventually I would like to perhaps do compound comparisons (If factA = regex and FactB = regex), but this seems like a good start.

Open to any and all suggestions!
This else block is in the wrong place. As I said in my previous comment, it should be at the end of the method, what I meant was, outside the if:
```
def find_match(facts_map)
  facts_map.each do |group_name, facts|
    return Hostgroup.find_by_title(group_name) if group_matches?(facts) and valid_hostgroup?(group_name)
  end
  Rails.logger.info "No match ..."
  return false
end
```