Groundwater Flow Process

This is based on #521 and must not be merged before.

The commits (starting with [[PL] Add GlobalSetup as template to GW process.](https://github.com/endJunction/ogs/commit/3bb51a7976b678798dcad7d18fff75d95a1a2e51)) fills in the initialize() and the solve() functions in the GroundwaterFlowProcess. The creation of the process is documented in the commit messages.

One think needs special attention because of incompatibility between the MathLib::DenseMatrix and Eigen matrices used: see the [[ML] Remove size check, because eigen has no getNRows()](
https://github.com/endJunction/ogs/commit/33883a58f2c431bf6612de294ed8216aa7c8be41) commit for details.

For those who wonder where the boundary conditions are applied, please don't: these are going into another PR.
maybe it's better to keep these check but with assert