So I'm announcing PyPNG! A very small and rather poor Python (plus a smidge of C to do CRCs) library with grand ambitions. At the moment I can copy a PNG file (by reading the chunks, and then writing them again), display the text chunks, et la piece de resistance: a tool to set the content of an arbitary text chunk! PNGs with embedded RDF, here I come.
Once I've fiddled with the library design a little I'll write a PNG Explorer (hmm, png:/// in Nautilus is tempting) and a Metadata Editor for PNG files. Then I'll try and do exactly the same for JPEG files.