Work on PETSc support for free surface stuff
Change temperature boundary conditions to not rely on Box
Initial commit of trying to isolate free surface stuff.  Still plenty of cleanup to do
Fix some const-correctness
Let free surface class handle some of the parameter stuff.  The list of free surface boundary indicators and whether it is enabled still belong to Simulator
Some cleanup
Huge amount of checks for whether the free surface is enabled.
Move some stuff for scoping reasons
disable PETSc again