First cut at new build system. Tested on Mac