Could someone smarter than me explain why we can’t use a Bittorrent-like protocol to achieve this effect with federated servers?
To answer the question, and I have just a superficial understanding of the concept, the main issue with decentralized vs. federated protocols is that you have to store the whole (or quite a large chunk of the) social tree locally on your device. That's a lot of data that you don't really care about. It might be fine if you access the network from a computer with plenty of space, but a mobile device might be more problematic.