To avoid loading applications from two different systems, use ShellAppSystem solely. This unifies the initial load and the reload. Extend ShellAppSystem to also load settings/preferences, and ensure they appear in the search.
This makes it clearer that really we're now an API, not just a monitor.