Instead of creating own completers, just return future's results.