code: public Seq<E> union(final Seq<E> seq) {
      final HashSet<E> elements = new HashSet<>();
      final SeqBuilder<E> builder = Seq.builder(size());
      final Consumer<E> appender = element -> {
        if (!elements.contains(element)) {
          builder.add(element);
          elements.add(element);
        }
      };
      forEach(appender);
      seq.forEach(appender);
      return builder.result();
    }
docs: Returns a distinct Seq that contains the elements from both this Seq and the given Seq.
  <p>
  Order is maintained, but there are no duplicates.