This performs shell expansion without field splitting. This fixes issues with filenames containing spaces. This commit also cleans up complicated logic to join fields and to set XDG_CONFIG_HOME.