Detailed Maze implementation
random maze tidied and commented