Implements an analogon to autotools "make headercheck" and adds package found summaries

Exclusion from the headercheck can be achieved in a CMakeLists.txt
file via the following macros:

exclude_from_headercheck(list...)
exclude_dir_from_headercheck()
exclude_all_but_from_headercheck(list...)

When not excluded, all headers matching dune/*.hh or src/*.hh
will be checked.

Unlike with autotools, make headercheck can only be called on the
toplevel module directory and then run on all module headers. In
contrast to autotools, CMake will cache the results and rerun only
checks on changed headers.