Fixed: Future-proofing for Qt 5 and C++11

Corrected a number of issues when compiling with Qt 5 and C++11:

- Added whitespace between string literal concatenations to be
  compatible with C++11 user-defined literals.

- Qt 5 and C++11 requires Mac OS X 10.8 or later (targeting 10.7+).
  The correct mkspec is "macx-clang-libc++".

- Fixed .pro/.pri files to use the correct version of Qt (based on
  QT_MAJOR_VERSION).

- Fixed warnings about narrowing of integer types (flags should be
  unsigned).

- Fixed de::function_cast<> so it can be used like a regular C++ cast.

- Replaced use of deprecated Qt methods (QDesktopServices and
  QString::toAscii()) when using Qt 5.

Also, cleaned up the qmake output by only printing the build config
(using echo()) when processing build.pro.
Windows|Fixed: Updated use of de::function_cast
Fixed|Server|Client: Sending player state is pointless for non-servers

Only a server needs to send a player's state to other players.
Cleanup
Documentation: Updated Doxygen config with PIMPL macros
Merge branch 'master' into mapdata-c++