code: def print_parent_and_children_info(self, node):
          
          G = self.G
          parents = G.predecessors(node)
          children = G.successors(node)
  
          print(general_node_label(G, node))
          tabs = '\t'
          for parent in parents:
              relation = G.edges[parent, node]['relation']
              print(tabs + 'Parent (%s): %s' % (relation,
                    general_node_label(G, parent)))
              for cop in G.successors(parent):
                  if cop != node:
                      relation = G.edges[parent, cop]['relation']
                      print(tabs + 'Child of parent (%s): %s' % (relation,
                            general_node_label(G, cop)))
          for child in children:
              relation = G.edges[node, child]['relation']
              print(tabs + 'Child (%s): (%s)' % (relation,
                                                 general_node_label(G, child)))
docs: Used for debugging - prints a short description of a a node, its
          children, its parents, and its parents' children.