code: public static <T> Map<String, T> getByName(List<T> namedObjects, Function<T, String> nameFn) {
          return getByName(namedObjects, nameFn, mergeFirst());
      }
docs: From a list of named things, get a map of them by name, merging them first one added