The engine surface runLoop actually drives, narrowed from the concrete
Engine class (which the CLI and gateline up pass in) so tests can
supply a fake without fighting Engine's private fields — an object
literal can't structurally satisfy a class type carrying private state,
but a real Engine instance satisfies this interface trivially.
The engine surface
runLoopactually drives, narrowed from the concreteEngineclass (which the CLI andgateline uppass in) so tests can supply a fake without fightingEngine's private fields — an object literal can't structurally satisfy a class type carrying private state, but a realEngineinstance satisfies this interface trivially.