only perform PerformPreProcessingSteps once per solution instance

fixes #87