- Implement a queue object to hold the executable command queue
- Implement a command processor thread to parse the command queue
- Implement command file tracking to avoid circular references
- Do not queue additional commands after a `QUIT` has been queued
Still required:
- Block new command execution until current command is complete
- Test for completion must include all sub threads created