1.6 update

This replaces some internal code with generic functions, making for
more efficient and robust retrieval of various elements of the scene.
I've also re-worked the FiberFX handling because the code did the wrong
thing if the user had FiberFX active, but omitted all FiberFX elements
from the pass. LWSN would get very unhappy indeed.
Relativity handling is also improved. I now handle object-based
references in Relativity expressions as well as nulls.
I've also added a preference setting to preserve script/batch files
generated by PPRN to trigger the rendering. In normal operation, we
kill these files, but it turns out that they can be useful. Note that
this applies as a global setting, as a convenience. It's not saved with
the scene or RPE files.