Distinguish between immediate and quick stop.
Don't exit main loop until command threads are done.
Wider shutdown rationalization.