Hoist the system-session drain script out of ProcessNode into a
per-device SystemDrainService owned by Engine. Multiple targets on
a device now drain their ringbuffers through a single PID 0 script
instead of one attach and script each. Retire the service when its
last node goes away.