[bugfix] Fixes usage of scotch (parmetis/metis)

There were problems with repartition.hh when using the original parmetis. The cause was
that for scotch we need to require both parmetis.h and metis.h, which broke backwards
compatibility for the original parmetis (which worked without metis, too). With the patch
we check whether parmetis.h is from scotch and if that is the case also require metis. If not,
metis suffices.
[cmake] Also check for Metis (needed for scotch's parmetis) as with autotools.
[bugfix] Fix macros for the case that HAVE_METIS is not defined.

For HAVE_METIS we do not use the ENABLE trick. It is therefore either defined or
not. Therfore using "#if HAVE_METIS" is a bug. This patch fixes this.
[cmake] Activate test for METIS and use it where appropriate.

Just like for the autotools.
[autotools] Use METIS flags where appropriate.
[bugfix] Use exter "C" to fix linker errors wit scotch.

Unlike the original METIS/ParMETIS scotch does not use extern "C"
in its headers. This lead to linker errors as descibed in
http://lists.dune-project.org/pipermail/dune/2014-March/012745.html.
This patch fixes this by guarding the includes with an extra extern "C"
directive.