code: public static <E> Optional<E> maybeOne(Iterable<E> iterable) {
          dbc.precondition(iterable != null, "cannot call maybeOne with a null iterable");
          return new MaybeOneElement<E>().apply(iterable.iterator());
      }
docs: Yields the only element if found, nothing otherwise.
  
  @param <E> the iterable element type
  @param iterable the iterable that will be consumed
  @throws IllegalStateException if the iterator contains more than one
  element
  @return just the element or nothing