first attempt BFS
method length and ancestor are working
de iterable version still need to be done