Generating dungeons that are more "zeldaesque"

Overview
=======
I wasted a lot of time last night in putting together an algorithm that will generate "zeldaesque" dungeons. Each dungeon features both a critpath that branches into many noncritpaths. Along the critpath is scattered doors that can only be unlocked by keys found along the noncritpath.

![image](https://cloud.githubusercontent.com/assets/1202938/4335286/af085e6a-3ffa-11e4-8ad7-b9616e40b72c.png)

Features
------------
 - Extended the random dungeon algorithm to include both critpaths and noncritpaths.
 - Decomposed the dungeon into sections of doors and locks and keys.
 - Added treasure around the dungeon for the hero to collect.
 - Reimplemented the win and lose conditions.
 - Imported arrows that follow the critpath.