Move from .gitkeep to .gitignore

Inverts our directory keeping structure. Use native .gitignores to
preserve directories and ignore files per directory

Removes the .gitkeep for `vendor/`. Vendor is automatically created by
composer so no need to .gitkeep it.