add a test for the direct parallel PETSc solver

which is using MUMPS right now.
fix some bugs in the assembly
add another test for the incompressible case with grad p_f != 0 (does not work yet)
update description
introduce a boundary term that fixes the new test
Minor edits to the free surface section.
Merge remote-tracking branch 'jdannberg/include_melt_transport'
Merge pull request #122 from bangerth/fix-manual

Minor edits to the free surface section.
fix some stuff in the solitary wave benchmark
add porosity dependence of viscosity to keller material model
start to add a test for compressible melt transport
Silence linear solver fails from all but processor zero.

 When a linear solver fails to converge in a parallel program, every processor would output the same error message -- leading to incredible amounts of entangled error messages. This has now been resolved: every processor still fails, but only processor 0 reports the error.
Merge branch 'master' into include_melt_transport

Conflicts:
	source/postprocess/visualization.cc
Add S40RTS initial condition

This is a combination of 5 commits:
Adding scripts to perturb the initial temperature field according to S40RTS
Included spline.h into S40RTS_perturbation.h and S40RTS_perturbation.cc file. Added tests for S40RTS and S20RTS
Updates for prescribed S40RTS initial temperature condition
Updated cos_coeffs, sin_coeffs and spline_depths function
Updated tests
Removed merge conflict from screen-output files
Merge pull request #125 from bangerth/silence-solver-fails

Silence linear solver fails from all but processor zero.
Merge pull request #124 from jaustermann/s40rts

Add S40RTS initial condition
Merge remote-tracking branch 'cig/master'
fix test output for S40RTS tests
update changelog.h and add Jacky to the manual.tex