various tweaks, fixes and refactoring, ground is now 1D perlinNoise