Now Purity is in its own module.
Now RunOutcome, RunStatistics, and TerminationReason are exported.

This was done to make this module a one-stop shop.
Updated to take into account the face that Failure now has a progress argument
Deleted some vestigial import hiding clauses.
Rank2Types --> RankNTypes

This was done because apparently Rank2Types is now a
deprecated synonym for RankNTypes.