I am sorry that I didn't follow the emails more closely last week.  I could have saved myself, and everyone, some time for debugging.
When trying things out I did try help(split), thinking maybe that was the problem.  What I found is copied below.  It is, let's say, terse.
I agree with Colin, if someone could insert something on the docs spelling out the difference that could be very helpful for other people who might very well come across the same issue. 
Cheers, Francis
P.S. I will go back and reread old emails to understand why this is the correct syntax.
Help on function split in module ufl.split_functions:
split(v)
    UFL operator: If v is a Coefficient or Argument in a mixed space, returns
    a tuple with the function components corresponding to the subelements.
------------------
Francis Poulin                    
Associate Professor
Department of Applied Mathematics
University of Waterloo
email:           fpoulin@uwaterloo.ca
Web:            https://uwaterloo.ca/poulin-research-group/
Telephone:  +1 519 888 4567 x32637
 
 
 
From: firedrake-bounces@imperial.ac.uk [firedrake-bounces@imperial.ac.uk] on behalf of Colin Cotter [colin.cotter@imperial.ac.uk]
Sent: Thursday, March 30, 2017 7:59 AM
To: firedrake
Subject: Re: [firedrake] close to fixing my nonlinear QG solver
It's a classic gotcha. We are kind of stuck with it due to wanting to stay close to the Fenics interface, but maybe we should have a specific bit in the docs about it [or a more highlighted one, if it already exists].
all the best
--cjc