Complete re-haul of mapGen code