cpp: Move cmake project root to top level

Moving the toplevel CMakeLists.txt to the project root permits the
project root to be used by cmake directly.  This permits proper
paths to docs, components, etc. to be used.
cpp: Fix comments and indentation
test-build: cpp builds using project root
cpp: Update README to use project root
Merge pull request #749 from rleigh-dundee/cmake-root

cmake: Use git root as project root