asStatefulWorkflow

Satisfies the Workflow interface by wrapping this in a StatefulWorkflow with Unit state.

This method is called a few times per instance, but we don't need to allocate a new StatefulWorkflow every time, so we store it in a private property.