yaml.MapSlice would allow us to preserve key ordering on maps. AFAICT there is no equivalent for json nor toml but one could be implemented with a custom Marshaller/Unmarshaller for each (whenever a map is encountered, produce a MapSlice).
This is likely to be a total breaking change for https://github.com/mikesimons/traverser as we will need to wrap the map type (which is the root type) and thus signatures will need to change ... I think?