Add support for non-installed libc++.

Sometimes (e.g., on continuous integration machines) we want to build with a
libc++ that hasn't been installed to /usr/lib/c++/v1. With this commit, we can
specify a LIBCXX_BUILD_DIR and LIBCXX_SOURCE_DIR to pick up headers and the
library itself from a source and build tree.