Allow specifying clang's lib full path, not just its dir

Some systems don't install a libclang.so symlink but instead leave
filenames like libclang.so.1 [1]. So the ability to specify the
directory containing the clang shared library isn't always enough. This
change allows specifying the full library path while maintaining the
ability to specify just its containing directory.

As an example of the problem,
[libclang1-3.4:amd64=1:3.4-1ubuntu3~precise1][1] on Ubuntu has both these
full paths available for clang's shared library (one's a symlink),
neither of which is named exactly 'libclang.so':
 * /usr/lib/llvm-3.4/lib/libclang.so.1
 * /usr/lib/x86_64-linux-gnu/libclang-3.4.so.1

[1]: http://packages.ubuntu.com/precise-updates/amd64/libclang1-3.4/filelist