Java 10's CompletableFuture - main features (allOf, thenCompose*Async, thenCombine*Async, thenAccept, thenRun, thenApply and others)