public List<Discovery> getAvailablePolicies(Entity empire, Policy choice) {
   return discoveries
       .get(empire)
       .done
       .stream()
       .filter(d -> d.groups.contains(choice.name()))
       .collect(toList());
 }
 public static Set<Policy> getPolicies(Discovery d) {
   Set<Policy> set = null;
   for (String group : d.groups) {
     Policy p = Policy.get(group);
     if (p != null) {
       if (set == null) set = EnumSet.of(p);
       else set.add(p);
     }
   }
   return set;
 }