def weighted(type, group)
      if @weights[type].has_key?(group)
        selector = WeightedSelect::Selector.new @weights[type][group]
        selector.select
      end
    end
def weighted(type, group)
      if @weights[type].has_key?(group)
        selector = WeightedSelect::Selector.new @weights[type][group]
        selector.select
      end
    end
Generate weighted-random value

 Type is :count, :first, :next or :last
 Group is symbol (for member count or first letter) or string representing letter

 @param [Symbol] type
 @param [Symbol|String] group