code: public final <R> Ix<R> map(IxFunction<? super T, ? extends R> mapper) {
          return new IxMap<T, R>(this, mapper);
      }
docs: Maps each element of this sequence to some other value.
  <p>
  The result's iterator() forwards the remove() calls to this' Iterator.
  @param <R> the result value type
  @param mapper the function that receives an element from this sequence
  and returns another value for it to be emitted.
  @return the new Ix instance
  @throws NullPointerException if mapper is null
  @since 1.0