Should Bitcoin as it is now go mainstream, even with 20 MB blocks it won't be able to process daily payments of average Joe.
The way bitcoin works is more akin to a settlement layer, not really a payment processor processing thousands of small-size transactions per second. I think we will need off-chain scaling solution to achieve mainstream if you want to maintain the useful properties that bitcoin has today.