'Adds the new workspace and writes out the new workspace config'

@lockutils.synchronized('workspaces', external=True)
def register_new_workspace(self, name, path, init=False):

    self._populate()
    path = os.path.abspath(os.path.expanduser(path))
    if (not init):
        self._validate_path(path)
    self._workspace_name_exists(name)
    self.workspaces[name] = path
    self._write_file()
