I was looking into (toying with) making a decentralized version of TDlib. Of course a lot of effort, but possible. Telegram has some of the best clients, and FOSS. Forking those with a new TDlib would be "best" of both worlds. Session did something similar with Signal clients as a base.