Make clang the preferred compiler

Updated makefiles to prefer clang but to fall back to g++ if no clang available. Builds on Fedora, OSX and Ubuntu