Move from direct source control of ~ to symlinked files with a setup.sh.

Putting ~ under git directly, and using cute gitignore patterns to
ignore everything but what matters sounded like a much better idea than
it turned out to be. By doing so, anywhere in ~ that didn't have another
git repository taking precedence would respond to git commands with the
~ repository. Also, the tags Emacs Lisp functions would find this
repository and attempt to build a tag file for all of ~.

The setup script is quite simple and should be easy to maintain. An
added bonus is ls -a ~/.dotfiles is now an easy way to see all the
"important" dot files.