Better compare function in Name.Map
Improve canon2key again.

labelize actually just checks that the label are well-formed, so no need to allocate a list there (even if calling List.rev does that also).