code: private long computeGoodness(Locale searchLocale, Locale comparisonLocale) {
      Localizer searchLocalizers[] = searchLocale.getLocalizers();
      Localizer comparisonLocalizers[] = comparisonLocale.getLocalizers();
      long goodness = 0;
      for (Localizer searchLocalizer : searchLocalizers) {
        boolean foundMatch = false;
        for (Localizer comparisonLocalizer : comparisonLocalizers) {
          if (comparisonLocalizer.getClass().isInstance(searchLocalizer)) {
            if (searchLocalizer.isWildCard()) {
              // Wildcard match, add goodness...
              goodness += 4;
              foundMatch = true;
            } else if (comparisonLocalizer.equals(searchLocalizer)) {
              // Exact match, add goodness...
              goodness += 5;
              foundMatch = true;
            }
          }
        }
        if (!foundMatch) {
          // searchLocalizer not found at all in comparisonLocalizers, so return -1
          return -1;
        }
      }
      return goodness;
    }
docs: Takes two input wrappers and returns a 'goodness' factor, a reflection of how well the two
  wrappers match each other. The searchWrapper is a wrapper that may contain 'ANY' localizers,
  which will match any localizer in the comparisonWrapper that shares the same classtype (these
  matches are slightly less good than a .equals() match, but still very good)
  
  @return a goodness factor, less than zero if the search wrapper can a localizer that doesn't
  match ANY localizers in the comparison wrapper.