refactor: simplify the "Only squares containing a pawn are reachable" fact
feat: now the knight path can't be a cycle.