Handle all DUNE and OPM modules the same way

dunecontrol will specify --with-* for each and every module that is
listed as a dependency in dune.module; there is no difference between
them because they all share the same code :-)
Guess where libraries are using full path

Because the probe is run from the project source tree(!)
Find modules for dune-geometry and dune-grid
Infer project name from dune.module
Make sure HAVE_FOO is defined if foo_FOUND in CMake
Activate Fortran interface on demand

Not only if we need to compile Fortran code, but also if we need to call
some functions from a Fortran library from C code.
Updated dependencies (most notably LibXML2 -> TinyXML)
Allow optional packages in find-module package list
Probe with include dirs to ALL dependencies

It may be that the header in the test is dependent on some other header
in one of the dependencies.
Only attempt to use precompiled headers that exists
Provide easy way to disable an entire directory
Find module for dune-cornerpoint
Find module for opm-porsol
Find module for opm-upscaling
Find module for opm-polymer