added a BFS cabability to enumerate. Can find a path from one point in the pointer graph to another if it exists. The edge labels are now offsets from the parent