reorganized the whole build makefile so every source file (.c/.asm) is compiled in its own .o object file