replace_node
Description:
[ Version ( since = "2.68" ) ]
public unowned TreeNode<K,V> replace_node (owned K key, owned V value)
  public unowned TreeNode<K,V> replace_node (owned K key, owned V value)
Inserts a new key and value into a Tree similar to insert_node.
 The difference is that if the key already exists in the Tree, it gets replaced by the new
       key. If you supplied a value_destroy_func when creating the Tree, the old 
      value is freed using that function. If you supplied a key_destroy_func when creating the 
      Tree, the old key is freed using that function.
The tree is automatically 'balanced' as new key/value pairs are added, so that the distance from the root to every leaf is as small as possible.
Parameters:
| this | a Tree | 
| key | the key to insert | 
| value | the value corresponding to the key | 
Returns:
| the inserted (or set) node or null if insertion would overflow the tree node counter. |