added basic world generation