Add a new output format, spupng.

Specifying -out=spupng instructs ccextractor to create a .xml file
and a set of .png files for use with dvdauthor's spumux.
spumux can use these files to add a subtitle stream to MPEG-2 files
that conform to DVD-Video standards.

Support for PNG files made it necessary to add background colors, namely
transparent and black. In particular, a transparent caption cell can now be
distinguished from a cell containing an opaque space by virtue of its color.
If the color is COL_TRANSPARENT, the cell is transparent, and the video
underneath is visible. If the cell's color is anything else, like COL_WHITE,
it indicates the character's forground color on a black background.
So a cell with a space character and a white foreground is displayed as
an opaque black rectangle and the video underneath is obscured.
COL_BLACK was added to make the association between the enum color_code
and the PNG palette entry for black.

One .xml file is created per output field. A set of .png files are created
in a directory with the same base name as the corresponding .xml file(s),
but with a .d extension. Each .png file will contain an image representing
one caption and named subNNNN.png, starting with sub0000.png.
For example, the command:
    ccextractor -out=spupng input.mpg
will create the files:
    input.xml
    input.d/sub0000.png
    input.d/sub0001.png
    ...
The command:
    ccextractor -out=spupng -o /tmp/output -12 input.mpg
will create the files:
    /tmp/output_1.xml
    /tmp/output_1.d/sub0000.png
    /tmp/output_1.d/sub0001.png
    ...
    /tmp/output_2.xml
    /tmp/output_2.d/sub0000.png
    /tmp/output_2.d/sub0001.png
    ...