started to generalize diffusion dither to work with different kernels