Adds a .gitignore file

This cleans up the 'git status' and 'git gui' output, by ignoring certain
files that should not go into the repository.
Adds a .gitattributes file

This helps git determine text vs binary files, and ensures that the
EOL style is correct on checkout.
Sets the execute permision for the ExtraDeletes script

Technically this script is not needed, because 'git clean' can do a much
better job. Also for source code releases 'git archive' will only use
files that are under version control.

Due to my previous commit, git fixed the EOL style for this file too.
Merge pull request #3 from graemeg/repos-maintenance

Repos maintenance commits