added a more robust gitignore file