trying to cope with a fact that Deferred is just a bad monad