Fixed a bunch of issues, basically rewrote the lexer thus far.
(INCOMPLETE): Moving utility functions to a seperate file
(INCOMPLETE): A makefile