change the version parser to handle Apple's clang as well

The version string from Apple's version of clang looks like this: `Apple LLVM version 5.0 (clang-500.2.79) (based on LLVM 3.3svn)`

The string on Ubuntu looks like this: `Ubuntu clang version 3.0-6ubuntu3 (tags/RELEASE_30/final) (based on LLVM 3.0)`

So, it seems "based on LLVM x.y" is more reliable than "clang version x.y", at least in the cases I can find. Perhaps there are more, and this has to be more complicated?