Improved the structure of the project and the makefile