Created separate files for function definions instead of stuffing everything into the header. Updated the Makefile accordingly