Avoid divide by zero in IntervalMesh construction

If the user passes both length and ncells as int and the former is
larger than the latter, we should not choose a cellsize of zero.
Deal with tuple degree in errornorm
Add xfailing test of top and bottom bcs in extruded mixed spaces

Solve two uncoupled Poisson problems in a single mixed space with
different boundary conditions in each case.  Currently fails due to
incorrect application of top and bottom boundary conditions.
Add xfailing extruded Stokes-Poiseuille test

Solve for simple Poiseuille flow in an extruded channel using
Taylor-Hood elements.  Currently fails due to incorrect application of
boundary conditions in the pressure space.
Remove support for extruded top and bottom bcs

This never did the right thing for mixed spaces, and furthermore was
only applied for cell integrals.
Adapt to PyOP2 renaming of SparsityMap to DecoratedMap

Preparation for implementing bcs on mixed extruded spaces.
Reimplement bcs for extruded spaces

In particular, rework implicit top and bottom bcs such that they only
apply to an individual Map, rather than the par_loop as a whole.  As a
side effect, assemble no longer needs to special case for these bc
types, since they're dealt with through the normal "flag the map values"
mechanism at a firedrake level.

As a result of this change, application of top and bottom boundary
conditions in mixed spaces now does the right thing and only applies the
bc to the relevant subspace.
Test mixed space top/bottom bcs with mixed strong/weak bcs

Solve two independent Poisson problems in a single mixed space applying
strong bcs to the top and inhomogeneous weak bcs at the bottom in the
first and vice versa in the second.  Tests that we don't have pollution
of top/bottom bcs between the two spaces.
Fix code=0.0 bug in Expressions

Need to check if the code is None, rather than just hope the user
provided something that doesn't evaluate to False in a boolean context.
Merge pull request #355 from firedrakeproject/expression_bug

* expression_bug:
  Fix code=0.0 bug in Expressions
Merge pull request #347 from firedrakeproject/ext-mixed-bcs

* ext-mixed-bcs:
  Test mixed space top/bottom bcs with mixed strong/weak bcs
  Reimplement bcs for extruded spaces
  Adapt to PyOP2 renaming of SparsityMap to DecoratedMap
  Remove support for extruded top and bottom bcs
  Add xfailing extruded Stokes-Poiseuille test
  Add xfailing test of top and bottom bcs in extruded mixed spaces
  Deal with tuple degree in errornorm
  Avoid divide by zero in IntervalMesh construction
Bump version to 0.11.0
Preserve order of supplied bcs in Matrix

We shouldn't use a set to hold the bcs, because the iteration order may
not be the same on all processes in parallel, which might lead to
deadlocks.  Instead, just maintain the bcs in a list with deterministic
iteration order.
Merge pull request #356 from firedrakeproject/parallel-matrix-bcs

* parallel-matrix-bcs:
  Preserve order of supplied bcs in Matrix
Don't add empty entries to Halo sends
Merge pull request #357 from firedrakeproject/no_empty_halo_sends

Don't add empty entries to Halo sends
Missing import
Make user-defined names in Expressions safe

Automagically rename internally generated local variable names to
avoid name clashes with user-defined variables in
Expressions. Introduce a simple test of the same.
Merge pull request #360 from firedrakeproject/unique_generated_variable_names

* unique_generated_variable_names:
  Make user-defined names in Expressions safe
  Missing import
replace scientificpython by sympy in instructions