CB-6711: Use parseProjectFile when working with XCode projects.

Otherwise the changes get overwritten by the cached version of the project file.
This is due to double caching between ConfigKeeper and parseProjectFile.
Add a unit test to guard against similar bugs in the future.

github: close #15
CB-6767 Allow `cordova` to be replaceable