Create PrologMachineCopy to reduce consult costs

Applications that dynamically consult the same code file multiple
times can benefit from performing the consult in an isolated
interpreter, then freezing that database using a PrologMachineCopy,
and later restore it into a new machine.
6 files changed