Dungeon gen overhaul

- Rewrote most of the code
- Added difficulty option for overworld
- Gen takes difficulty into account to make them easier or harder to
find
- Dungeons adjust for different materials (air, water, etc) correctly so
they are placed much more effectively