update Makefile to use CXX as compiler
update Makefile to use set variables CXX, LDFLAGS, CFLAGS only when empty
update Makefile to include new source files