Use this class for exactly one instance of a protocol run.
T is the type of the result value of this protocol run.
T