Maybe a some more text here since this is an important class. The difference with and relationship to a plain `F.Promise` should be highlighted.

Here's some documentation for inspiration. :)
* http://download.java.net/lambda/b88/docs/api/java/util/concurrent/CompletableFuture.html
* http://www.scala-lang.org/api/current/index.html#scala.concurrent.Promise