I'm thinking we shouldn't call `startServer()` here. From my read of the project code, we'll always get a `projectOpen` event even for the initial project, so we'll call `startServer()` at that point anyway. (If that weren't the case, we'd still have a problem here because this call to `startServer()` wouldn't populate `_serverStartupPromise`.)

That points to another potential race condition, though--is it possible that `_nodeConnection` won't be established until after the first `projectOpen`? If so, then we actually need to store the connection's promise, and have `startServer()` wait on that promise before calling `staticServer.getServer()`.

(tagging @joelrbrandt for this one--not sure which one of you guys wrote this)