Make `f(await(completedFuture))` execute `f` synchronously

A worthy optimization, suggested by @danarmak.

Closes #73
As long as `f` is executed on the same `EC` no matter whether the `Future` was completed or not, then I think it should be fine. Is it?