Refactor project and platform services

We need this refactoring in order to reuse code for `iOSProjectService`
You can extract `pathToSave || npm.cache` to a variable :smile: