Pedigree Collapse

I'm running into an issue when I try to add a duplicate node ("Can't create node with ID"), which is fine in itself (no need to create a duplicate).  However, it should try to create the parent / child relationship as a child could have another parent.  Perhaps _bpointer should be a List [], similar to _fpointer, so a child can have multiple parents?  

Example:

    Jeff
    -----Kevin
    -------------Beth
    --------------------Jane
    -----Sarah
    -------------Beth
    --------------------Jane

In the example above, when I go to add Beth, I get a "Can't create node...".  But I need Beth to also have the parent Sarah.  Beth needs to be a child of both Kevin and Sarah in the tree.  Right now, I get this...

    Jeff
    -----Kevin
    -------------Beth
    --------------------Jane
    -----Sarah

If this is already possible, I'm not quite sure how to do it - perhaps it can be automatic.