Finish STD IO redirection

* Shell now supports STDERR redirection
* support input redirection as well as pipes and
* output redirection in one command
* Add a makefile
* Remove unused/repeated functions
* General cleanup