First draft of perlin noise class.  Still needs clean up and renaming.