Improvements to blob2d example

Simplifying and adding more comments

Works with and without Boussinesq approximation
to produce propagating blob in a reasonable time (few minutes on single processor)
Important fix to petsc_laplace preconditioning

Forgot to assemble the vector after calling user
preconditioning function. Worked on some machines,
but not always.