Changed the type of Failure nodes.

Instead of a Bool as their second field, Failures in FetchResult are now
of type

Failure :: e -> Maybe (FetchResult e) -> e

with the second parameter being the original node. Thus, it's possible
to wrap every kind of node uniformly, and to have general,
non-recoverable errors.
Finished Fetch.Forest.

Wrote complexDownload, complexDownload'.

downloadForest is now much more elegant, thanks to the new failure
nodes. All failures, local or remote, are handled uniformly via the
creation of failure nodes.  Every kind of node can now be re-tried,
including Inner, which previously wasn't possible. The function only
delivers one result set instead of two, and that only contains the
failures.
Append to 309259b73b52a606d3c038a3008040cfcb4f3deb.
Added Whole-type to Numeric.Peano
Added Injective/Isomorphic-instance for Numeric.Peano.Whole.