pngtodo.txt - list of things to do for libpng

for 0.9
   improved dithering
   final bug fixes
   cHRM transformation
   better documentation

after 1.0
   overlaying one image on top of another
   optional palette creation
   histogram creation
   text conversion between different code types
   support for other chunks being defined (sCAl, the gIF series,
      and others that people come up with).
   pull writer
   better dithering
   keep up with public chunks
   other compression libraries
   more exotic interlace handling
   better filtering (counting huffman bits?  filter type inertia?)
   C++ wrapper
   other languages (pascal, for one)
   comments of > 64K

