Removed sonar/open-jdk maven profiles since they are not needed anymore for cloudbees
Adds the CompletableFuture

This makes reactive programming possible. The InvocationImpl has been changed
so it returns a CompletableFuture instance which eventually can be exposed directly
to the end user.

Exposing it to the end user using e.g. AsyncQueue/AsyncAtomicNumber etc will be part
of other pull request.
CompletionFuture: the andThen can be configured with an executor
CompletableFuture: Extracted the BackupCompletionCallback to clean up Invocation interface
Renamed to CompletableFuture
CompletableFuture makes use of the AsyncExecutor
Working on review comments
Dealt with the Interrupted exception