deal safely with non-ascii atom types
support for more complex atom structures (MetadataItemListAtom)
support for metadata-related atoms