Move levels to their directory
Separate Game and Solver
Toward more separation between Game and Solver
Introduce a generic BfsGameSolver
Copy the previous algorithm to the generic BfsGameSolver
Refactor to use the generic BfsGameSolver
Clean-up
Simplify (really) the BfsGameSolver
Simplify (thank you @nicuveo for the tip)
Improve naming
Simplify