Provisional undefined NULL fix.
Finding header files fixed.
Fixed core source files and wrote a new makefile for Ubuntu.
Fully separated out the linux and Mac makefiles.
Restored Mac functionality for original makefile.
Restored forced exit if original make file run on Linux instead of Mac.