Merge Maze and MazeRunner, make ASCIIMaze inherit from maze

This commit merges the Maze and MazeRunner classes by adding MazeRunner's
instance methods to Maze. This commit also makes ASCIIMaze inherit from
Maze, rather than be a property of Maze. In future, all maze UIs will work like
that.