Add narrow_node creation functions

One allows for the creation of temporary nodes, and one creates
constant values.
Rename nnode_size -> nnode_count

Size make it look like it's the size of a narrow node, not the number
of them that exist.
Handle registers in CATD sequences

Registers are a special case for CATD: you need to take the input to
the register, not the output (which ends up being delayed by a cycle).
I have no idea why my current tests don't find this, but the upcoming
counter example does.
Implement ADD splitting

I borrowed this code from the Hacker's Delight, just extended to work
with N words instead of 2.  There's also a simple test case for this,
but it doesn't really test overflow at all...