Enable release mode from wrapper script

By using --disable-debug (--enable-debug is the default), release mode
can be toggled from the wrapper script.

Some IDEs, notably QtCreator requires this flag to be set when running
CMake, in order to enable debugging properly. Thus, it is explicitly
set (and printed) when using ./configure also.
Build tests as a separate target

It is very annoying having to build all the tests when you are
testing some code in the main library. Someone downloading the
library probably doesn't need the tests either, so these are left
out of the default target.
Let SuiteSparse path be specified without config mode

Use the _ROOT suffix to direct the CMake module to use a particular path
to the SuiteSparse installation without also triggering config mode (by
convention CMake uses Foo_DIR as the name of the variable which
specifies where to look for another *project*).
Allow umfpack to be used as an alias for SuiteSparse

Most people will associate the use of SuiteSparse with "using UMFPACK"
since that is the component that is actively used.
Allow system installation to be used with dunecontrol
Annotate dependencies with version number
Set version number to 1.0 in anticipation of release

Version numbers for the library follow ABI-style and is independent
of the ones for releases. If the interface breaks, we change the
soversion, regardless of the timing of the releases.
Supplement GNUInstallDirs to support multi-arch

Debian object code libraries are in directories which include the
platform name to allow several of these to co-exist. Other distros
such as Fedora uses a simpler naming scheme (e.g. "lib64/") which
is more backward-compatible.
Enable support for multi-arch on Debian/Ubuntu
Replace build script with a smart wrapper

If a user simply types `make` it will run in parallel by default, which
is what we want to do in most cases.
Add target to run self-tests

`make check` is run by the Debian package creator, so it must be a
supported target in the Makefile. For now this is just the same as
`make tests`, but in the future we may/should/must expand this to
also run the tests and figure out if the output is OK (whereas
`make tests` will continue to only compile them)
Assume that tutorial programs have already been run
Take output directory as command-line parameter

These changes make it easier to call the program from a generated
Makefile rule, since only the Makefile knows where the output tree
is (containing the rest of the documentation).
Put figure generation program with number generation programs

Since the data files are generated by the tutorials, it is natural to
have the figure generation program also together with this source code;
otherwise people may think that it have to be used for *all* figures
Build on systems that don't have /proc mounted

If we are building in a VM which doesn't have /proc mounted, then it is
most likely that this is done on a shared server; we revert to building
for a single processor.
Support arch.-indep. libraries files for 64-bit sys.

Fedora uses lib64/ for architecture-independent files on 64-bit systems,
whereas Debian (which is multi-arch for binaries) uses lib/
Disable generation of LaTeX/PDF documentation

Class listings are impractical in PDF format. Instead, the tutorial
alone could perhaps be published in PDF.
Transitively make dune-common optional if dune-istl is

CMake fails if a package that was required is not found, even if the
one module finding that package was optional itself.
Better error messages on missing items

The old version only said that _req_vars was not found; now you get to
see the actual variables that are missing.
Only clean up config variables if there actually is any