autocomplete.c -> handles history autocomplete and path suggestions on TAB key
builtins.h -> all header files gathered
globals.c -> initializes global variables
history.c -> handles history
interpreter.c -> breaks up the input into args and calls runner, also implements pipes and redirection
main.c -> entry point
makefile -> contains commands to compile the source
prompt.c -> displays prompt and takes user input
README.md -> the file you're reading
runner.c -> handles background and foreground running of commands
terminal.c -> handles raw mode
utils.c -> misc functions
'builtins' folder contains individual source files for internal shell commands