When a failure happens in a subprocess it needs to be
pickleable (and not contain a traceback, since those can
not be pickled) when being sent across the process boundary
so that the receiving process can read it and unpickle
the corresponding object.
Part of blueprint process-executor
Change-Id: I2f26faa4e02da6acf4f0840239d0b17143de8d76