Fix exception handling in Constant.assign
Test mismatched shape assignment to Constant
Make Constant instantiate the appropriate ufl constant

FFC deals specially with ufl Constant, VectorConstant and TensorConstant
objects, so our Constant should really be an instance of the appropriate
type.  To do this, we have to do some __new__ voodoo to set up the
inheritance correctly.
Test more restriction combinations for vector constant
Merge pull request #230 from firedrakeproject/fix/constant_voodoo

Correctly assemble forms with Constants on interior facets.  To do this,
a Constant needs to inherit from the appropriate UFL type depending on
the shape of its value.  We do this with a small amount of Python class
voodoo.
Stash computed form on tensor for re-assembly

When passing in a tensor to assemble, stash the form and computed
kernels on the tensor such that if we reassemble the same form on
the same tensor we save having to preprocess/split the form again.
Add test assembling different forms into the same Function
Add test assembling different forms into the same Matrix
Fix path in demos Makefile
Fix gitignore for new path structure
Adapt to changes in PyOP2 matrix assembly

The Mat user must now call assemble explicitly to ensure the matrix is
built before using it.
Allow exterior facet integrals in parallel
Set up fieldsplit ISes correctly for parallel running

Numbering of fields on process N is offset by the sum of the rows of the
big matrix on processes 0, ..., N-1 (inclusive).
Add fieldsplit solving test for mixed Poisson (no bcs)
Add fieldsplit test for mixed Poisson with bcs
Merge pull request #244 from firedrakeproject/stash-computed-form-on-tensor

Stash computed form on tensor for re-assembly
Test mixed poisson problem in parallel

Use both normal gmres+jacobi solve and fieldsplit solve.
Merge pull request #242 from firedrakeproject//matrix_assemble

Adapt to changes in PyOP2 matrix assembly.  After queuing up par_loops
to assemble matrices, we must explicitly call matrix.assemble()

Additionally, remove restriction on assembling exterior facets in
parallel and add parallel fieldsplit support (tested with mixed poisson
problem in parallel)
Stash compiled kernels on the form to save recompiling
Fix docstring of clear_cache