I think the fees should be voluntary and market-based. I like the idea that transactions are prioritized based on the fees attached to them. I'd imagine it will evolve to where you'll be able to see how long a transaction is likely to take given a certain fee, and you can pay fees according to your time preferences.
This has the double benefit of signalling to payment processors (miners) whether capacity needs to increase or decrease. If the network is getting clogged with transactions, and people are paying increasing fees to get their transaction done faster, then the profit for miners rises and new miners enter. Same if the market slows down, fees will drop and miners can withdraw capacity.
It's all very elegant
