Require dependencies based on enabled CMake options
This PR modifies the CMake behavior for dependencies to match libxml2!91 (merged). Enabled options are now required and lead to a fatal error if missing. By default, threads and Python are enabled and gcrypt is disabled.
libgcrypt now uses a find module and is linked via target Gcrypt::Gcrypt
.
Also fixes the CMake config file to use CONFIG mode for LibXml2.