DependentPromise - support for cancellation of Promise origins
Feature: this release introduces new class DependentPromise - a wrapper that may keep track of CompletionStage-s it's originated from. Also, this wrapper will cancel all the origins enlisted.
Feature: additionally, Promises class adds several overload to all, any, atLeast and corresponding *Strict variants to let specify whether or not CompletionStage-s should be cancelled.
Bug fix: AbstractCompletableTask.thenComposeAsync now correctly cancels all intermediate (hidden from client) Promise-s used.