A maze generator and solver