code: public static <V> Object[] update(Object[] btree, Comparator<V> comparator, Collection<V> updateWith, boolean updateWithIsSorted)
      {
          return update(btree, comparator, updateWith, updateWithIsSorted, NoOp.<V>instance());
      }
docs: Returns a new BTree with the provided set inserting/replacing as necessary any equal items
  
  @param btree              the tree to update
  @param comparator         the comparator that defines the ordering over the items in the tree
  @param updateWith         the items to either insert / update
  @param updateWithIsSorted if false, updateWith will be copied and sorted to facilitate construction
  @param <V>
  @return