Which i hope doesnt end up being the case. How is a user supposed to know how much to add to remain 'competitive'? If anything we use tx fees to cut down on spam and then just work off a first come first serve basis for legitimate users, who have a minimum tx fee to help subsidize the cost of mining as the block reward goes down.
Remember Bitcoin is in BETA. All developers have expressed ideas for how to build a fee market place however it needs to be built. Since most tx can be sent with no fee and until recently the min mandatory fee was a rounding error most development time has been spent solving other issues.
The min fee was never intended to subsidize mining. The
SOLE purpose of the min mandatory fee is to prevent spam/DOS attacks on the network. Remember high priority tx are not required to pay the min mandatory fee. So obviously a network of all high priority tx would net miners exactly 0 BTC. Voluntary fees will replace the block subsidy as it declines. You can't force miners to include any tx in a block, you can't verify if miners are processing tx first in, first out. Bitcoin was never intended and is incapable of working that way.
Users are free to include a fee of any amount (including nothing).
Miners are free to include tx they choose in a block.
The fee economy meets in the middle.
Obviously for a fee economy to work and the client to be able to provide the user with useful information the following needs to be known:
a) all tx waiting for a block and their fees (all full nodes should have a copy of the memory pool)
b) historical record of recent prior blocks (tx included, tx excluded, size of block, average fee, etc).
c) (optional) fee policies of major miners (possibly passed out of band)
With that information a client could give the user a recommendation:
0.0001 BTC for 95% chance to be included in the next 24 hours (144 blocks)
0.0020 BTC for 95% chance to be included in the next hour (6 blocks)
0.0050 BTC for 95% chance to be included in the next 10 minutes (1 block)