Better .gitignore

Covers more OS generated files than before.