Again, why just the first and why not a `TotalOrd` implementation? Also, the clone seems extremely unfortunate, although I guess the adjustment to make these `.cmp`s take `&LeafElt` and `&BranchElt` would remove the need for them (i.e. this can become `self.elts[0].cmp(&other.elts[0])`)... but this is mostly moot, since we almost certainly should just defer to `#[deriving]`.