txdpce provides a Twisted Python class, DeferredParallelCommandExecutor.
It allows you to register competing functions that compute a result. The
execute method of the class calls them all one after another and returns a
Deferred that will fire with the first success. The deferreds corresponding
to the incomplete function calls are cancelled.  If all functions fail, the
deferred errs with a list of the failures.

The point is that you might have a couple of ways of getting a result (out
of a cache, off the network) and you want to try them all, taking the
answer from the first one that figures it out.
