public function setSourceData(array $source) {
		if ($this->_locked) {
			throw new ReadOnly('Config is read only');
		}
		
		foreach ($source as $key => $part) {
			if (is_array($part)) {
				$this->_data[$key] = new static($part, false);
			} else {
				$this->_data[$key] = $part;
			}
		}
		
		return $this;
	}