Concat

Implement Concatr and Concatl on empty, single, and ftree structures.
That's a good point. Looking at it again, the length 1 scenario is the only one that doesn't make any sense. The idea was that the function should still behave in a sane way when given surprising input, but I guess there's no sane way to make a node from a single element. Perhaps a `panic` here might be more appropriate?