cpp: Add gtest support to test/color
travis: Install gtest for cpp builds
cpp: Add cmake gtest support
travis: Build gtest
cpp: Add xsd-fu generation dependencies

Regenerate sources on demand, not when running cmake intially.
This also permits regeneration when xsd-fu or the templates
are changed.
cpp: test/headers uses gtest
cpp: test/enum uses gtest
test/color: Use const parameter references
Merge pull request #685 from sbesson/landingpagefix

Downloads page: use PDF artifact
cpp: test/enum.cpp does not use typename
cpp: test/color.cpp uses lvalues in ASSERT_THROW
cpp: test/color.cpp uses stdexcept.h
merge develop -D org -I include -E exclude: PR 528 (Tile performance improvements for VMS and NDPI)
merge develop -D org -I include -E exclude: PR 635 (Use jgit-buildnumber to set version information in Maven)
merge develop -D org -I include -E exclude: PR 643 (Data test updates)
merge develop -D org -I include -E exclude: PR 644 (Add support for writing ModuloAlong* annotations)
merge develop -D org -I include -E exclude: PR 646 (Save current revision number in memo file)
merge develop -D org -I include -E exclude: PR 684 (AVI: fix byte count when skipping rows)
merge develop -D org -I include -E exclude: PR 686 (CellWorx: do not assume that the first well/field file exists (rebased onto develop))
merge develop -D org -I include -E exclude: PR 687 (Deliberately change generated code comments)