Generates and solves mazes