Sounds like a great project for someone to work on.
You know, those Mastodon folks have built some interesting stuff on top of ActivityPub. Maybe we should build a text-based communication protocol on ActivityPub in addition to more social features. Then we could also give some file-sharing mechanism, wherein a user could send a message with a tightly linked file, like the message and file are attached to one another.
Then we could let users run a server to send these sorts of messages over a federated ActivityPub network.
Perhaps we could normalize this protocol so much that ISPs would include a basic option of an address and some storage. This would really help to separate us from these mega service companies like Google and Facebook.