Separate shell into multiple files; Update Makefile