def connect_to(target, label = nil, properties = nil)
      Edge.new(self, target, label, properties).tap do |edge|
        self.connect_via(edge)
        target.connect_via(edge)
      end
    end
def connect_to(target, label = nil, properties = nil)
      Edge.new(self, target, label, properties).tap do |edge|
        self.connect_via(edge)
        target.connect_via(edge)
      end
    end
Public: Connects this node to another.

 target     - The node to which you want to connect. The +target+ node
              will be the "from" end of the edge.
 label      - An optional label describing the relationship between the
              two nodes.
 properties - Optional key/value properties to be associated with the
              edge.

 Example:

   phil = Turbine::Node.new(:phil)
   luke = Turbine::Node.new(:luke)

   phil.connect_to(luke, :child)

 Returns the Edge which was created.

 Raises a Turbine::DuplicateEdgeError if the Edge already existed.