Greatly simplified slave interaction.

Refactored most of the slave state transition code.

1) Slaves are now always post their termination event to the event loop,
rendering engine garbage collection obsolete.

2) Engine slave backlog is now indexed by fd instead of a channel
pointer, so there are no dangling cyclic dependendies anymore in case a
slave disconnects without a handshake.

3) Slave output dump is now guarded with a try block, so that if the
storage is not available, runtime doesn't crash.

4) A lot more verbosity in slave state transition logging.