copy method
Implementation
@override
GridBFSState copy() {
return GridBFSState(
start: start,
target: target,
grid: List.generate(grid.length, (i) => List.from(grid[i])),
parents: HashMap.from(parents),
dirs: List.from(dirs),
open: Queue.from(open),
status: status,
);
}