Ignore XCode and OSX generated files

Updates the .gitignore with rules for ignoring all OSX and XCode
generated files that shouldn't be versioned in the repo.