Fix install target
Update cmake-format config file
Format all cmake files.
Update CPM.cmake version.
Use FILE_SET HEADER to verify and install the header files.
Prevent build problems caused by CPM_USE_LOCAL_PACKAGES
Prevent problems with doctest if local found
* update CPM.cmake to 0.28.0
* cache CPM.cmake dependencies
* create modules directory if it doesn't exist on windows
* experiment with env variable
* experiment 2
* experiment 3
* use env for all workflows
* make cache keys OS dependent
* replace env.GITHUB_ with github.workspace
* format workflow files
* update cache key
* use unique key for each workflow