Concat

Implement Concatr and Concatl on empty, single, and ftree structures.
That would be true if `nodes` was a closure that would only be used within `concat`, but if it were used in any other context it would be possible for xs to have a length of 1 (or 0, which is why the default return value is an empty Slice). By including those scenarios, we ensure that `nodes` can be re-used at a later point if necessary.