Refactor project and platform services

We need this refactoring in order to reuse code for `iOSProjectService`
It's poor practice to use the global `$injector` from a class. Rather, get the injector as a constructor dependency. `this.$injector.resolve(...)`.

Better yet, don't use explicit resolution at all, take the two project services as constructor dependencies.