Always build llvm with llvm

this requires you to have a basic version of llvm in the path to bootstrap

Done because llvm trunk no longer compiles with gcc 4.6
Bugfix in C reference code for a test
Revert to gcc for building llvm trunk

but set LD_LIBRARY_PATH to allow custom installs of gcc
and rejigger the Makefile to respect existing LD_LIBRARY_PATH settings
Merge remote-tracking branch 'upstream/master'