Added a builder interface.
Added a bunch of methods to the maze interface.
Implemented all the new methodes of the maze interface in the DifferedMaze class.
Changed the way the walls are stored in memory (old way wasn't functional).