Move various properties to metadata, to enable reuse
Add png compression

* pngquant, which does lossy compression on the png
* optipng, which compresses the png file format