Don't worry about detecting disk removal directly. Simply have the launcher always copy it's launcher.ini into the %PLUGINSDIR% on launch after instantiating it and then work off that copy. Also have any temp INI you use working from there as well. When running with the platform, the platform detects a disk removal and then will close out running apps but not launchers, allowing the launchers to clean up as normal. When running directly, the app will either crash or exit normally when done, and then the launcher can do its usual cleanup. You don't necessarily need to handle anything differently on the launcher's end because you can let CopyFiles and other operations just fail on the nonexistant drive. Or you could have it explicitly detect existence of it on app exit and then act accordingly.
For disable services, we don't need that fully sorted to go beta, I don't think.
And the documentation can wait until everything is finalized. A quick readme is fine at the moment.