Can't assemble forms on both Mesh and ExtrudedMesh in same scope

When building both a Mesh and an ExtrudedMesh we attach the coordinate field to the domain data of ufl.dx, ufl.ds etc...

Hence, the following breaks:

````
m = UnitTriangleMesh()
em = ExtrudedMesh(m, ...)

V = FunctionSpace(m, 'CG', 1)
u = Function(V)
assemble(u*dx)
````

Because dx has a coordinate field defined on the extruded mesh, but u is on the unextruded one.  I don't really know what we can do about this.