Built on https://dagster.phacility.com/D6133.
As part of the work to make ExecutionPlan constructable from a snapshot (without access to the PipelineDefinition), persist the information on the outputs that require user code during the ExecutionPlan creation, so we don't need to have the PipelineDefinition available in the run worker.