Determine DOTFILES_ROOT correctly

and cd into it. This fixes git setup.
Merge pull request #142 from kirelagin/fixroot

Determine DOTFILES_ROOT correctly
Minor tweaks

Use $(...) instead of backquotes which is not only POSIX-compatible but
is way more readable and nests properly.
Be more generous with quotes (just in case) and less generous with backslashes.
Fix bootstraping broken in #142
Merge pull request #145 from kirelagin/fix_root

Fix bootstraping broken in #142
Merge remote-tracking branch 'holman/master' into syntax

Conflicts:
	script/bootstrap
Adjust overwrite/backup/skip logic

This shouldn't alter behaviour of the script
Get rid of long ifs

This commit also preserves observable behaviour
Drop `link_files` function

It had strange name anyway
Rename $source to $src and $dest to $dst

`source` is a terrible name for a variable in shell scripts:
it gets highlighted as a keyword—that's annoying.
Merge pull request #144 from kirelagin/syntax

Minor tweaks
Extract all the linking logic to `link_file`
Check if target exists and is a symlink
Merge pull request #148 from kirelagin/enhance

Part of #147
peace out, sublime (closes #150)
Support for $XDG_CONFIG_HOME

<app>/<foo>.config -> $XDG_CONFIG_HOME/<app>/<foo>.

If $XDG_CONFIG_HOME is not set, $HOME/.config is assumed, as required
by XDG Base Directory Specification.
Merge remote-tracking branch 'holman/master'