Feature gitignore

This adds a .gitignore file to the pre-3.3 branch to hide editor and auto-generated files.

The same .gitignore file might work well with the master branch but I haven't checked.