This method is private within the scope of the flow module, it is used
by one stage in the flow to ask a subsequent stage to produce its value.
The result of the yield is then stored in self.result and is an instance of
Failure if a problem occurred.