Yeah, I agree that this is the biggest usability hurdle, and its actively being worked on.
That said, there are plenty of good general-purpose instances and it's not that different from picking an email host. Sure, you can spend hours figuring out which email host to use, but most people go with a name they've heard before (e.g., Gmail) and don't need to think much about it at all. I could see Mastodon getting to a similar point once it gets more established.
Except that the established big-name corps probably don't have an interest in running a Mastodon instance. (And if they do, they'll do it in the similar way that Google Talk and Slack used to support XMPP: Once they have a significant-enough userbase, they burn down the bridges ^W federation.)
That said, there are plenty of good general-purpose instances and it's not that different from picking an email host. Sure, you can spend hours figuring out which email host to use, but most people go with a name they've heard before (e.g., Gmail) and don't need to think much about it at all. I could see Mastodon getting to a similar point once it gets more established.