code: def add_node(self, node):
          
          if node.id in self.nodes:
              del self.nodes[node.id]
              self.nodes[node.id] = node
          elif len(self) < self.ksize:
              self.nodes[node.id] = node
          else:
              if node.id in self.replacement_nodes:
                  del self.replacement_nodes[node.id]
              self.replacement_nodes[node.id] = node
              return False
          return True
docs: Add a C{Node} to the C{KBucket}.  Return True if successful,
          False if the bucket is full.
  
          If the bucket is full, keep track of node in a replacement list,
          per section 4.1 of the paper.