Because this argument surfaces here all the time, I'll down put my thoughts on how this whole scaling issue is a problem that only exists because Bitcoin, or it's community, doesn't know to have a relationship with other coins. Let's say you have a Merchant that takes Litecoins, Quark, whatever as a peer to peer cash system at their place of business. At the end of the business day, the merchant consolidates their transactions into one Bitcoin transaction. This seems to be the same scenario that is being talked about as a 'Lightning Sidechain', except Core developers aren't invoking the dirty word of 'altcoin'. In this case, Bitcoin doesn't need to fork, because it isn't trying to be a single solution to this problem, and I'm not sure BIP 100, BIP 101 or whatever will enable Bitcoin to cope with this 'Mass Adoption' scenario anyway.
BY the way, consolidating thousands transactions into one won't necessarily save space. Instead of thousand small transactions, we will have one big one, but it must contain the same amount of information (who paid to whom) and therefore will take the same amount of space on blockchain. (Well, in case of a coffeehouse, the destination will be the same, but origin will be different, so the compression will be 1:2, rather than 1:1000. So it is not the solution).
I can see no way everybody's computers (and smartphones!) can keep everybody's transactions. Not at current network/processor/memory capacity. Increasing blocksize limit won't solve this problem, it will just make it more obvious.
To resolve the scalability problem we have to distribute transaction records in such a way that every transaction stored not on all computers, but on a small part of them. For example, every block is stored on 1000 randomly chosen nodes. The rest of nodes (billions of them) keep only header of it. Such network can grow indefinitely without affecting storage capacity requirements. When bandwith/storage capacity will grow, the 1000 will become 2,000, 10,000 etc. etc.
This much is obvious, although hardliners who insist that the entire block chain must be verifiable on every node will torpedo any attempt to make that happen,