refactored compile time tests
[skip ci]
Cleaned up the Makefile
[skip ci]