Add test of apply boundary conditions to mixed matrix

In particular, test that if the subspace we're applying the boundary
conditions to is not the first one we zero the correct rows/columns in
the matrix.
Correctly apply bcs when assembling mixed matrices

Previously, we would only manage to zero the rows in the first diagonal
block.
Merge pull request #140 from firedrakeproject/fix/mfs-bcs

Correctly zero rows/columns in mixed systems beyond the first block.