Lifting of strong dirichlet bcs for mom eqn.

Uses petsc's MatZeroRowsColumns. Doesn't quite work yet. Needs some more thoughts for the non-masslumped case (velocity correction needs a correct rhs).
Also lift the boundary condition from the continuity equation and zero corresponding rows in the gradient.

Summary of test problems with failures or warnings:
square-convection-parallel-trivial.xml: F
petsc_readnsolve.xml: F
Stokes_mms_cg_p2p1_test_cty_cv.xml: FFFFFFFFFFFFFPPPPPPPPPPPP
Stokes_mms_cg_p1bp1.xml: PFFFFFFFFFFFFFPPPPPPPPPPPP
Stokes_Subduction_VK_Case_1b.xml: PFFFFFPFFF
column-parallel.xml: F
Don't provide negative row indices to MatZeroRowColumns()

Four remaining failing tests:

  Summary of test problems with failures or warnings:
  petsc_readnsolve.xml: F
  Stokes_mms_cg_p2p1_test_cty_cv.xml: FFFFFFFFFFFFFPPPPPPPPPPPP
  Stokes_mms_cg_p1bp1.xml: PFFFFFFFFFFFFFPPPPPPPPPPPP
  Stokes_Subduction_VK_Case_1b.xml: PFFFFFPFFF
On second thought, don't zero columns in ctp_m/ct_m. Do enforce bcs in velocity correction solve.

Lifting the dirichlet bcs from the continuity equation by zeroing out columns 
in ctp_m and adding the contributions into ct_rhs turns out not to work. As
ct_rhs gets reassembled every nl. it. In next iteration we can't recompute
the lifted contributions to ct_rhs as the corresponding columns in ctp_m are
already zeroed. Instead we now only zero the columns of ctp_m and ct_m when
copying them into petsc matrices inside full_projection. The pressure projection
equation already has the right lifted values on the rhs because of the 
ctp_m u* term which gives the right terms as u^* already satisfies the bcs
and we haven't zeroed the corresponding columns. We do now have to apply
bcs to the velocity correction to avoid the nonzeroed rows of ct_m^T
clobbering the velocity bcs.
Apply dirichlet bcs to diagonal schur preconditioner.

Now passes Stokes_Subduction_VK_Case_1b.
Tweaks to test case.

I want a full log, and I don't want to wait for 10000 iterations for a solve to fail.
Tests failing because n/o solver iterations has decreased.

No better way of failing a test case!
Fix fieldsplit with new lifting.
Merging in trunk.
Merge trunk changes into branch.
Merge in trunk.
Merge in trunk.
Merge trunk into branch.
Merge in changes from trunk.
Merge in trunk
Merge in trunk.
Merge in trunk.
Merge in trunk.
Merge in trunk.
Merge in trunk.