Further work with the makefile:
Created build output directories
Generalized rule for compiling source into object files