Use collections.OrderedDict so that attribute dictionaries are ordered