public static <T>RuleRouter<T> of(final Iterable<Rule<T>> rules){
  return new RuleRouter<>(ImmutableList.copyOf(rules));
}

public static < T > RuleRouter < T > of ( final Iterable < Rule < T > > rules ) { return new RuleRouter < > ( ImmutableList . copyOf ( rules ) ) ; }
create a router from a list of rules .
