code: public static <T> CloseableIterator<T> distinct(final CloseableIterator<T> iterator) {
          return wrap(Iterators2.distinct(iterator), iterator);
      }
docs: If we can assume the closeable iterator is sorted, return the distinct elements.
  This only works if the data provided is sorted.