code: public void setProperty(String name, String value) {
  		// Set cache correctly with prop name and value.
  		propertyCache.put(name, value);
  
  		String[] propName = parsePropertyName(name);
  		// Search for this property by traversing down the XML heirarchy.
  		Element element = doc.getRootElement();
  		for (int i = 0; i < propName.length; i++) {
  			// If we don't find this part of the property in the XML heirarchy
  			// we add it as a new node
  			if (element.getChild(propName[i]) == null) {
  				element.addContent(new Element(propName[i]));
  			}
  			element = element.getChild(propName[i]);
  		}
  		// Set the value of the property in this node.
  		element.setText(value);
  
  	}
docs: Sets the value of the specified property. If the property doesn't
  currently exist, it will be automatically created.
  
  @param name
  the name of the property to set.
  @param value
  the new value for the property.