Returns

Set a property, overwrite if it exists and creates if not exists. This api
assumes the node exists and only tries to update it only if the call fail
it will create the node. So there is a performance cost if always ends up
creating the node.