In the forthcoming mutable implementation, we'll have to visit
node trees that are more complex than a single slice, although
the algorithm will still be expressed in simple indexing terms.
We still refrain using #[inline] indications as being
premature optimizations, but we strongly hope the compiler will
indeed inline most of the glue.
I would add a self.is_empty() helper. It's good practice for anything that has a .len().