Makefile rules to allow for modular cpp development