@verius You're more familiar with the codebase than I am so rather than make suggestions that seem silly, I'll ask: How easy or difficult would it be to make the codebase load in feature modules dynamically?

Because if this is relatively easy, what we could add as part of the API discovery methods, is a feature-detection methodology that can determine what software you're dealing with, and react accordingly.  On the server-side, Friendica does this for federation, and it's allowed them to smooth over a lot of the federation issues Hubzilla had with other software.  Seems an applicable strategy here as well, if we can load/unload functionality easily.