allow the name field to be put either first or last. Add suport for traversing backwards by deletion