Agreed upon the direly needed improvements. This is definitely a step in the right direction, but it strays slightly from the technical requirements which I failed to communicate.
-Ordering is important. Does this indicate that I should be using an AoA?
-I would like to preserve the key-value relationship if at all possible.