Currently when serialising context between steps we delete anything that can't
be pickled. This change implements ExplodingVariables, which raise a given
exception whenever they are used, and uses them to replace unpickleable stuff
so that users at least know why their variable disappeared between steps.
Currently when serialising context between steps we delete anything that can't be pickled. This change implements ExplodingVariables, which raise a given exception whenever they are used, and uses them to replace unpickleable stuff so that users at least know why their variable disappeared between steps.