Give coordinate field a meaningful name
Pass dim when building a vector function space on an OPC
Cache Function.split so that names don't change
Support output of any function space

If both the coordinates and the output field are in H1, project to CG1.
Otherwise project to DG1.  In both cases, splat a warning to the screen
telling the user which fields are being projected.
Keep name of function when projecting in output
Output projection warning in RED
Only warn of projection once per file
Merge pull request #181 from firedrakeproject/discontinuous-output

Support output on any function space, projecting to P1 if the output
function and coordinates live in H1 and to P1dg otherwise.