cpp: metadatamap test no longer requires pair stream operator

Older versions of the C++ standard library and/or boost::variant do not
support iterator stream operators, making the gtest equality assertions
fail to compile.  Switch to use simple assertions without this
requirement.
cmake: Provide GNUInstallDirs directly

While this is provided by recent cmake versions, older 2.8 releases
do not provide it.  Include directly to allow use of any 2.8
version.
Merge branch 'cpp-metadatamap' into travistest