Changed the CMake check to enable C++11 automatically if GCC > 4.3 or Clang > 3.0

This patch aims to prefer standard smart pointers to self-implemented ones. It doesn't mean TagLib requires C++11.

Currently, TagLib2 tries to use ```std::shared_ptr``` first, ```boost::shared_ptr``` second, and then self-implemented one. Enabling C++11 means to make the first try successful.