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 CGN, project to P1.
Otherwise project to P1dg.  Otherwise, project to P1 before output.  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