code: public static <T> UnaryOperator<T> compose(Iterator<Function<T, T>> endodelegates) {
          return new UnaryOperatorsComposer<T>().apply(endodelegates);
      }
docs: Composes an iterator of endofunctions.
  
  @param <T> the functions parameter and result type
  @param endodelegates to be composed (e.g: f,g,h)
  @return a function performing f ° g ° h