Remove most of Darwin-specific configuration

* Pass CMAKE_CXX_FLAGS to cmake subprocesses instead.

This is based on the fact that on Darwin `CXX_FLAGS` must always be altered to compile properly C++11.
But this change makes it required only once during the global cmake call instead of copying this information in many places.

LLVM and gtest are then both compiled with these options. I think this is desirable for LLVM and we actually need `-I/usr/lib/c++/v1` (which changes of location between OS X versions) and `-stdlib=libc++` for the build to succeed on Darwin.
And it is probably OK for gtest (it means it is compiled in C++11 mode because we have https://github.com/mozart/mozart2/blob/e2405763274ddd391eceddd08003b54a6d556b2f/vm/CMakeLists.txt#L22) but I would like your feedback on that (my guess is having gtest compiled with similar flags is a good thing).