Allow custom actions when error is thrown by ProcessingPipeline
A ProcessingPipeline performs multiple steps on a list of input images and saves the result to disk. If an unexpected error occurs during the pipeline an error is thrown by the 'run' method and returns. Currently there is no way for client code to actually handle the error and either rollback or resume the pipeline where it stopped.