This extends the existing dithering code to add Jarvis-Judice-Ninke,
Stucki, Atkinson, Burkes and Sierra error diffused dithers. It also
exposes the zig zag (serpentine) choice to the user. Diffusion is
tweaked to use fixed point for the error values.
This patch fixes the quantization of a complete gray
image (RGB=128,128,128), which must generate a black and white
checkered pattern when the Floyd-Steinberg filter is applied.
Regression from b6d07d995f
The error propagation must be limited to 0...255 values, and the new
quantization error must be calculated to that limited value. Also the
1/16 part of the Floyd-Steinberg distribution must be the remaining of
the other parts.