Avoid use of the NSString `existsAtPath` category method

We have removed the use of this category method from the rest of the code base. Refactor `FSXcodeProjectDataSource` so that we can delete it entirely.
Remove NSString `isDirectory` category method
Remove NSString `existAtPath` category method

Also rename NSString category from "Path" to "Additions".
Code style fixes
Remove unused includes
Remove unnecessary instance variable

As far as I can tell we only add objects to `_project`, but we never actually use it.
Combine std::set’s find and insert into a single operation
Normalize newline and backspace characters in key event strings

The system’s key binding dictionaries use both CR and LF for newline and \x08 and \x7F for backspace.
Allow path string in bundle item chooser to extend below shortcut
Show items from key bindings dictionaries in bundle item chooser
fixup! Remove NSString `existAtPath` category method
Add variables from Preferences → Variables to bundle item chooser