Update copyright.
Give priority to CMAKE_ARGS set via config.cmake.

We were overriding all CMAKE_ARGS set for a package when calling `hunter_cmake_args`.  That meant that CMAKE_ARGS specified in config.cmake weren't being honoured.

This fixes that by changing `hunter_cmake_args` so that it prepends its arguments.  Because config.cmake (containing calls to `hunter_config`) is processed before the packages' hunter.cmake files (containing calls to `hunter_cmake_args`), config.cmake overrides hunter.cmake.
Unit test to ensure `hunter_cmake_args` prepends its arguments.
Integration test to ensure config.cmake overrides hunter.cmake.

This change adds a variable, `HUNTER_PROJECT_ROOT`, to Hunter to allow re-rooting the tree searched for config.cmake and cmake/projects.  If not set, this new variable is set to the same value as `HUNTER_SELF`, but setting it means you can use an alternative set of packages.  The integration test makes use of this to use a dummy test set of packages.