Allowing engine code to run with a swapped-in auxiliary RNG

This is needed by widgets (e.g. monitors, plots) for
non-deterministically calling code that changes RNG state without
breaking run reproducibility.

The current solution is temporary and ought to be superseded later by
one that properly passes the RNG through a call context (along with
`self`, `myself`, and probably the current plot and plot pen).