extracted components for map generation, refactor of game loop into a more reduced version :)