> When multiple people respond to the same email, the email "thread" branches out into a tree. If the tree branches out multiple times, keeping track of all the replies gets messy

I think this is mostly due to bad UIs in email clients. Usenet had similar, if not more extensive, branching many Usenet clients made this quite manageable. I don't see why similar clients could not be written for email.