upcast

Type-safe way to convert between an Unsuccessful and a ProgressiveOutcome.

In theory, this would be an implicit upcast. However, ProgressiveOutcome is a class, and Unsuccessful is an interface, so the subtype relationship cannot be declared to the compiler.