code: public static <X, CX extends Collection<X>> Lens.Simple<CX, CX> asCopy(Function<? super CX, ? extends CX> copyFn) {
          return simpleLens(copyFn, (__, copy) -> copy);
      }
docs: Convenience static factory method for creating a lens that focuses on a copy of a <code>Collection</code>, given
  a function that creates the copy. Useful for composition to avoid mutating a <code>Collection</code> reference.
  
  @param copyFn the copying function
  @param <X>    the collection element type
  @param <CX>   the type of the collection
  @return a lens that focuses on a copy of CX