Importing the compiler tests for C++11

This comes from kde:scratch/dakon/cmake-cxx11, commit
2098118bca351ace8a2915593f7f0a0afca8182e
c++11: require C++11 in cmake and use `auto` at some places
Fix a typo in the build instructions
Harmattan: Update instructions for C++11 builds with clang

Turns out that using C++11 with clang and STL from gcc 4.4 is not exactly
trivial. Here's the quick summary:

- The STL headers are broken (std::swap etc)
- The Qt headers are broken (user-defined string literals)
- Qt's moc is broken
- Some warnings are fixed now
c++11: use std::unique_ptr over std::auto_ptr which is deprecated
Travis: require Qt 5.1.1

The clang builds with Qt 5.0.2 fail with the following error [1]; the idea is
that it should hopefully be fixed in newer Qt.

The package names has changed -- again.

[ 16%] In file included from /home/travis/build/jktjkt/trojita/_build/AbookAddressbook_automoc.cpp:2:
In file included from /home/travis/build/jktjkt/trojita/_build/moc_AbookAddressbook.cpp:9:
In file included from /home/travis/build/jktjkt/trojita/_build/../src/AbookAddressbook/AbookAddressbook.h:29:
In file included from /home/travis/build/jktjkt/trojita/src/Gui/AbstractAddressbook.h:26:
In file included from /opt/qt5/include/QtCore/QStringList:1:
In file included from /opt/qt5/include/QtCore/qstringlist.h:46:
In file included from /opt/qt5/include/QtCore/qdatastream.h:46:
In file included from /opt/qt5/include/QtCore/qiodevice.h:46:
In file included from /opt/qt5/include/QtCore/qobject.h:55:
/opt/qt5/include/QtCore/qmetatype.h:669:32: error: copying variable of type
      'QBasicAtomicInt' (aka 'QBasicAtomicInteger<int>') invokes deleted
      constructor
        static QBasicAtomicInt metatype_id = Q_BASIC_ATOMIC_INITIALIZER(0);
                               ^             ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/opt/qt5/include/QtCore/qmetatype.h:534:82: note: in instantiation of member
      function 'QMetaTypeIdQObject<QWidget *, true>::qt_metatype_id' requested
      here
  ...int qt_metatype_id() { return QMetaTypeId<T>::qt_metatype_id(); }
                                                   ^
/opt/qt5/include/QtCore/qbasicatomic.h:198:5: note: function has been explicitly
      marked deleted here
    QBasicAtomicInteger(const QBasicAtomicInteger &) = delete;
    ^

[1] http://travis-lite.com/jktjkt/trojita/jobs/10830801
Merge branch 'c++11'

REVIEW: 112399