code: func (self *Graph) Link(source, target uint32, weight float64) {
  	if _, ok := self.nodes[source]; ok == false {
  		self.nodes[source] = &node{
  			weight:   0,
  			outbound: 0,
  		}
  	}
  
  	self.nodes[source].outbound += weight
  
  	if _, ok := self.nodes[target]; ok == false {
  		self.nodes[target] = &node{
  			weight:   0,
  			outbound: 0,
  		}
  	}
  
  	if _, ok := self.edges[source]; ok == false {
  		self.edges[source] = map[uint32]float64{}
  	}
  
  	self.edges[source][target] += weight
  }
docs: // Link creates a weighted edge between a source-target node pair.
  // If the edge already exists, the weight is incremented.