To start with a question, is there a use case for running multiple instances of Satellite on a single client? Once in a while I'll find a connected surface locked up and it's always because a second instance has been opened.
Could there be a detection system a la Companion proper that at least warns if the process is already running and asks the user if they want to continue?