To si samozřejmě také dovedu představit. Ale otázka zní: je toto cesta k vytvoření univerzálního klienta? Jsem přesvědčen, že nikoli.
Při tvorbě univerzálního klienta se můžeme poučit z fungování speciálních klientů, ale to je asi vše. K získání univerzálního nástroje nelze rozhodně použít jednoduché slučování funkčností speciálních nástrojů. To bych mohl přidávat další a další funkčnosti (specializace) až do Aleluja a pořád bych neměl v ruce nic, co by se alespoň vzdáleně blížilo univerzálnímu nástroji.
Mohl bych samozřejmě jít i jinou cestou a místo přidávání specializací ubírat specializovanost. Tak bych se sice teoreticky mohl dobrat univerzálnosti, ale prakticky je to asi neřešitelné.
Myslím, že chceme-li vytvořit univerzálního klienta, musíme ho jako takového koncipovat již od počátku. Pokud bychom si chtěli práci zjednodušit nějakým počátečním omezením, bylo by asi lepší omezit zpočátku komunitu uživatelů - například použitým jazykem. To je však velmi nepopulární krok, každý - právem - chce, aby jeho výtvor používala celá globální komunita. Tak nevím...
BTW: Označení "klient", byť ho tady sám používám, není na místě. Každý klient by měl přece plnit i roli serveru, nemůžeme někoho nechat sosat ze systému, aniž by sám něco poskytl ostatním.