Only require METIS if ALUGrid is built for parallel

If we have a parallel ALUGrid, then we must also link with METIS. If
METIS is not available, then parallel ALUGrid should be disabled. If
we have a serial-only ALUGrid, then METIS is not required.
Add Eigen3 CMake find module

Imported from cmake/FindEigen3.cmake in Eigen 3.1. It is licensed
under the 2-clause BSD, which should be compatible with GPL as long
as the build system is distributed as source.
Allow user to specify path to Eigen3 library

By setting EIGEN3_ROOT, we can point directly to the path of the
library checkout we want to use. No other searching will then take
place.

Notice that if you have found an Eigen3 installation in a previous
configure, it will not find a new version even if you introduce the
EIGEN3_ROOT variable!
Allow mixed case name in variable (as for package)

Since the package is named Eigen3 (in mixed case), we should allow
for the variable to be named this way, too.
Use standard code to handle not found case

Instead of setting EIGEN3_FOUND ourselves, rely on the standard method
to check arguments and raise an error if not found.
Search common suffixes for include files

This allows us to set e.g. -DEIGEN3_ROOT=/usr/local, and have the
files actually be located in /usr/local/include/eigen3
Require the newer 3.1 version of Eigen
Add support for Eigen3 in Autotools compatibility layer
Don't search for disabled packages

Setting CMAKE_DISABLE_FIND_PACKAGE_xxx flag should make find_package
not doing anything, but this does not seem to work with older versions
of CMake. Anyway, we can test this flag and make sure that we don't
call find_package in that case.

Also includes a check for both upper- and same-case versions of found
flag, as some modules, most notably Boost, does not set the upper-case
version of their _FOUND flag; this tests for both.
Merge pull request #327 from rolk/327_disable

Don't search for disabled packages
Merge pull request #324 from rolk/324_alugrid

Only require METIS if ALUGrid is built for parallel
Merge pull request #325 from rolk/325_eigen

Make probe for Eigen3 part of the common build system
Merge remote-tracking branch 'upstream/master'
Merge branch 'master' into devel