fn bfs(maze: FastSet<Point>, start: Point, end: Option<Point>) -> i32
Returns the cost to reach end or the cost to reach the furthest point if there is no target.
end