Valid point, car pooling would definitely be a good thing. And I think people would be more willing if it was more efficient than it is. Uber Pool does not seem to match people very well. Scheduled rides could probably be very optimized, so its two minutes out of the way, for each person, and no one really minds. Also optimizations like, if the rider isn't there yet, don't even go for them and pass them on to the next car. Definitely plausible, but a pain in current formats.
Imagine an existing excellent bus network, like London's, but with completely dynamic routes, and a variety of bus sizes suitable for different times of day. Open the app and tell it where you're going, and it tells you which bus stop and bus number you need.
Not quite. Buses have fixed static routes. I described dynamic routes optimized to minimize delays for all users, while being picked up and dropped off at the exact address they want to be at, rather than some static bus stop.