code: public Node<T> node(T content) {
      final Node<T> search = nodes.get(content);
      if (search != null)
        return search;
      final Node<T> n = new Node<>(content, this);
      nodes.put(content, n);
      return n;
    }
docs: Returns the node with a given content. If such a node does not exist, it is created and added to the graph.
  @param content the given node content
  @return the node with the given content