Facilitate generation debug with transient models when in-place transformation is active: preserve output model.
Refactor GenerationTracer to respect the case when output nodes are coming with pointer to input model.
Supply correct (as much as possible) trace for in-place transformations, but warn it's expensive.
The idea is to copy input model each time we expect inplace transformation, change this copy but pretend in tracer original model is being altered.
Aside from extra model copies, we need to ensure rules blocked for actually changed model are blocked for our copies as well