PETSc 3.5.0 Fixes

SNESGetFunctionNorm is now removed from PETSc as of 3.5.0. This PR addresses the two spots where that was a problem. I'm less confident about what's going on in the DM nonlinear solver bit (who wrote that code?, doesn't look like there's an example that uses it), but I manually ran the Laplace-Young example to double check the final residual is giving the correct answer.