ECS Ghost Inspector

This ensures that inspectors for multiple ghost services (as will be possible under ECS conditions) will not flicker and randomize on commit.  To QA:

1. Run with the ecs flag
2. drag two or more services onto the canvas and click deploy once on each
3. On the last services, run `app.ecs.commit()` in the debugger
4. The inspector should simply change from ghost to service inspector without flickering between services and possibly ending up on a random service.

NB: this PR was co-opted from earlier work that hasn't passed design yet, revolving around the immediate option flag.  Such may come up later.