Add (failing) test assembling bilinear forms on facets
Build correct Sparsity for mixed measure forms

Previously, we assumed that bilinear forms would only assemble over
cells and hard-coded the Sparsity pattern to be the outer product of
the test and trial spaces' cell_node_maps.  For either pure facet
integrals, or mixed cell and facet integrals, this is the wrong thing
to do.  Instead, loop over the integrals in the form and construct the
appropriate map pairings to pass into Sparsity construction.
Merge pull request #69 from firedrakeproject/correct-mat-sparsity

Build the correct matrix sparsity when the form contains something other
than cell integrals.