Add defines to includes
Reorganize the Makefile to support Mac and Ubuntu out of the box