code: public <R> Future<R> flatMapCf(final Function<? super T, ? extends CompletionStage<? extends R>> mapper) {
          return Future.<R> of(future.<R> thenCompose(t -> (CompletionStage<R>) mapper.apply(t)));
      }
docs: A flatMap operation that accepts a CompleteableFuture CompletionStage as
  the return type
  
  @param mapper
  Mapping function
  @return FlatMapped Future