Added separated image class and generator class

can now generate a Perlin noise image that can re-blend r, g, and b
values upon request