added perlin to lib, and tests