Clean up .gitignore.

Which ones do you guys think we actually need to keep? I always do out of tree builds, so it turns out, I never need any of these.

Note, you can use a .gitconfig entry to specific a local ignore file for things that are consistent across your machine, like *.swp for vi or ~* for emacs.
We need this one to hide the project configuration that the particular user has on their system - it is not useful to share it.