Dirichlet boundary condition for GroundwaterFlowProcess.

This adds initialization of boundary conditions (for now only the Dirichlet type) in groundwater flow process.
There are some new operators in the `ProcessVariable` class: `getMesh()` and boundary condition iterator access.
The `MeshNodeSearcher` class has a new method `getMeshNodeSearcher(mesh)` which creates a new `MeshNodeSearcher` for the given mesh and stores it in a private static variable, or returns an existing one.
Until now the include is not added. I think it is needed because in line 77 std::fill_n is used.