Oh, really ? Here is news for you: amule is single user desktop application.What makes you think that it should be "designed client-server" ? There's long list of features that can not by definition work correctly on remote gui because this gui is remote. And you can assume nothing about bandwidth or latency of network connecting between core and gui. Core have huge datastructure (do you know ?) which is updated in real-time. If you have an idea about how to syncronize it better with remote - please, share this knowlage with me (no kidding).
It's only IMHO

:
For me, the
greatest advantage of amule is its possibility to work as a daemon. You say "single user desktop application" ? Hmm.... I'd say, it's "NecroSoft's way"

(I don't repeat "IMHO", all this text is "IMHO", you understand!

) I "was born" on IBM360, so all the fine pictures leave me indifferent. I don't know how to make "user interfaces" ... (My respect to all who knows)
I can imagine the problmes of working with your huge data structures in realtime. But :
1. Separating this application into "server" and "client" make the development in general simplier - these 2 tasks are different, is it bad if the developer of the "user interface" does not depend on the developper of the "network part" ? (I don't forget about the problems of the interface between these 2 parts; but it's the only complication)
2. "Configuration" is a
separate part of the "user interface" - others realtime requirements, insignificant size of structure, it can be even a separate program (althow it's not comfortable for user)
Aren't you agree? I stop writing, I don't want to impose my opinion ...
As to
I'd suggest you to develop it.
- I must reject with regret - my head does not accept "++" at all ... I tried several times

I can only give the adices
