+/*
TODO - list of things to do for libpng:
Final bug fixes.
-Fix problem with C++ and EXTERN "C".
Better C++ wrapper/full C++ implementation?
-Keep up with public chunks.
-sPLT chunk handling.
+Fix problem with C++ and EXTERN "C".
cHRM transformation.
-Support for application-defined chunk handlers.
-Improve setjmp/longjmp usage or remove it in favor of returning error codes.
-High-level API for reading images.
+Remove setjmp/longjmp usage in favor of returning error codes.
Add "grayscale->palette" transformation and "palette->grayscale" detection.
-Color to gray transformation.
Improved dithering.
Multi-lingual error and warning message support.
Complete sRGB transformation (presently it simply uses gamma=0.45455).
Better documentation.
Better filter selection
(counting huffman bits/precompression? filter inertia? filter costs?).
-Optional palette (sPLT) creation.
Histogram creation.
Text conversion between different code pages (Latin-1 -> Mac and DOS).
-Improve API by hiding the info_ptr.
+Avoid building gamma tables whenever possible.
+Use greater precision when changing to linear gamma for compositing against
+ background and doing rgb-to-gray transformation.
+Investigate pre-incremented loop counters and other loop constructions.
+Add interpolated method of handling interlacing.
+Switch to the simpler zlib (zlib/libpng) license if legally possible.
+Extend pngvalid.c to validate more of the libpng transformations.
+
+*/