bfs

fun bfs(source: Atom, visitSource: Boolean = false, shouldVisit: (fromAtom: Atom, toAtom: Atom, dist: Int) -> Boolean = { _, _, _ -> true }): Iterable<Molecule.Searched>

Crawl the bond network in breadth-first order starting at the source atom.