added perlin noise class and random walker class