bug in CompletableFuture fixed;
small cleanup;
class Function refactored.
Function.eval() can return other Function