NOTES:
*I used a doubly linked list for creating this mini shell that kept a track of all the commands that the user was entering.
*The history function checks if there are any commands already in the doubly linked list. If not, it prints an error message.
*All the commands entered are enqueued in the DLL which is then checked by the history function.
*The DLL is looped over and prints out all the commands.