Bump minimum CMake version to 3.16, updating build options, flags, and documentation
This is a follow on from !824 (merged) to further rationalise the main CMake script and update the README given the changes to requirements. Specifically:
- Bump CMake minimum version to 3.16
- 3.18 is optimal for CUDA support, but use 3.16 to match current Geant4 requirement
- Warn if a non-NVIDIA CUDA compiler is used
- Error out if CUDA < 11 is found
- Error out if both the Vc backend and CUDA are enabled (known incompatibility)
- Update README with CMake, C++17, CUDA 11 requirements
- Small reorganisation of top level CMake script for more coherent structure/sections
- Remove obsolete material/nuclei code
- Remove unneeded/unused/misunderstood adjustments to
CMAKE_CXX_FLAGS
.