Add ICC color profile extraction to jpeg, tiff and png

This is my revised version of #911, squashing all the commits, with some reformatting and minor restructuring of the code, and documentation. Also, I changed the OIIO metadata name from "icc-profile" to "ICCProfile".

It does not need to be reviewed separately, I'm just posting it as a PR for @YangYangTL to be able to pull and test.