changed: use the dynmatrix helpers from upstream (now in dune-common)
use std::array instead of a C array
added: allow switching between fastamg and amg through template param
added: checker-board uniform mesh if given a rocklist with > 1 materials

useful for tests
fixed: specifying the global dimensions of a uniform mesh
added: ability to use overlapping schwarz as a smoother
changed: drop seqlu in favor of new upstream template InverseOperator2Preconditioner
added: allow switching AMG smoothers from commandline
modernize pointer handling

use shared_ptr instead of manual delete's
utilize the preprocessor to keep template boilerplating at acceptable levels
added a bunch of useful debugging options
support dune's two level preconditioner
allow using a different preconditioner for the multiplier block
added: heuristic for enabling the two-level preconditioner

a simple approach based on average cell aspect ratios
improved loggerhelper for use with multithreading
added: add support for UMFPACK
added: OpenMP support

threads are used during
 - assembly phase (two-color mesh approach) - amount of threads in
   flight is only limited by mesh dimensions.
 - setting up the preconditioner for the multiplier block - amount of
   threads in flight unlimited in principle
 - solving the 6 load cases - limited to 6 threads
remedy some doxy sins
added: error check material data read from grdecl
changed: group material volume fractions by satnum