reverse the assembly to stand on its feet instead of its the head

i.e. the local Jacobian now calculates the derivatives of the residual
functions with regard to the primary variables of the "primary DOFs"
instead of the derivative of the residuals of the "primary DOFs" with
regard to all primary variables of all degrees of freedom in a stencil.

this has the advantage that the residual has to be evaluated only once
per primary DOF and the "change of residual" for the other DOFs come
for free because this is just the fluxes which go through a face. For
discretizations where the number of primary degrees of freedom in a
stencil is significantly smaller than the total number of DOFs, this
leads to a significant speedup of assembly time. (most importantly,
this applies to the element centered finite volume discretization if
using two-point gradient approximation.)
ebos: enable the cache for intensive quantities

this seems to slightly speed things up at the linearization stage...
fix the output of the timings

and also add the time which is required for writing the visualization
output.
parallel tests: make their names consistent

i.e. $PROBLEM_$DISC_parallel instead sometimes $PROBLEM_parallel_$DISC
rename *JacobianAssembler to *Linearizer

because this describes better what this class is doing...
fix the MPI parallelization with the new linarization code

there were some hiccups when an element's local system of equations
must be linearized if the element is not in the process' local grid
partition as well as some problem with the interaction between
linearization recycling and partial relinearization...
rename a few iterator variables form "it" to "elemIt"
FvBaseDiscretization: remove the unused protected version of finishInit_

I forgot to remove it when redoing the initialization stuff...
add a runtime-knob for the user to adjust the relinearization tolerance