This is a mini shell inspired by the workshop build-your-own-shell.
There are five stages in the workshop. However, I wanna make this shell not a toy. So I decide to write more than the five stages.
The workshop has provided a shell script and tcl script to do tests. In order to write my own tests, I decide to use GTest to do unit tests and tcl to test the functionality of the shell.