Instead of dictionary attr. This preserves construction-order instead of some string-sorted (?) order in dictionaries and will allow us to rely on this in passes, and in particular to drop ordered_syms from read/write. This will also come with some performance improvements as we will not be relying on string key comparison anymore.
Likely clashes with #734 so better land that first.