Bottom line is Bitcoin will never be a replacement for small retail transactions. If it suddenly took off in popularity and hit MasterCard/Visa type volume, blocks would fill up and transactions would take 3 years to confirm if ever. YES this could theoretically be fixed with changes to the client, but there is ZERO chance that will occur since it takes 19 months for developers/miners to adopt even the simplest changes.
So what is BTC good for? It's a good alternative to gold and silver for capital preservation. For micro transactions, just convert a bit each month to fiat and use the rich existing network of micro transaction systems all of which are way superior to the current BTC implementation for that purpose.