https://medium.com/codex/data-structures-algorithms-in-ruby-breadth-first-search-for-binary-trees-6bcbb48bd88b