Added bifurcation coordinate concept tags. Added State objects to allow for uniform handling of non-bidirectional and bidirectional bifurcate coordinates. Updated users of traverse_step to use the new state objects to allow iterative traversal of both concepts