Improve comments
Automatically select "to color" when new color is selected
VB case issues
New support function for finding distance in 3D space
New XYZ and CieLAB color transform functions

Required for the new green-screen tool
If a function forces the working layer to 32bpp, detect and process accordingly

...after the filter is finished.  Otherwise BitBlt will fail to copy
alpha values (obviously, as the main image will still be in 24bpp
format!)
Apply hand cursor to preview box upon mouse_leave

This fixes an odd issue where the selected cursor is shared between the
preview window and any other picture boxes on the form.  I can't track
down a reasonable cause, but this fix works just fine in the meantime.
When converting a 24bpp layer to 32bpp, ask for a transparency value

Optional; if no value is passed, fully opaque (255) is assumed.
New green screen tool (Image -> Add alpha channel)

Technically PD already had an "add alpha channel" tool, but it just
added a blank alpha channel - not so useful.  Now the user is given a
variety of choices for adding an alpha channel, including a powerful
green screen algorithm.

After much research, I decided to use a full CieLAB (L* a* b*) color
space transformation, plus an optional blend threshold.  There are two
primary problems with green screen techniques: fully removing the
undesired color, and aliasing objects edges so that the new background
blends smoothly with the original image.  By providing separate "erase"
and "blend" thresholds, PD handles both cases admirably, with better
quality than any other open-source tool in my testing (not an
exaggeration).