Merging construct_bfs

Adds implementation of Dourisboure & Gavoille's bfs tree construction algorithm, with 2 optional separators.