code: public FactoryCache merge(FactoryCache other) {
          FactoryCache result = new FactoryCache();
          copy(result, this);
          copy(result, other);
          return result;
      }
docs: Returns a new {@code FactoryCache} instance containing the factories
  from {@code this} and from the {@code other} cache.
  
  @param other The other cache
  @return a new instance containing factories from {@code this} and
  {@code other}