Control.Future
data Progress a b
data Future a b
type Future'
desire
waitFor
maybeChance
getProgress
mkFuture
expect