One thing that (in my opinion) is limiting BTC's growth is that only 50 BTC are produced per block (for now) no matter how many people decide to use it. This means that if everyone wants some at the same time, the price can climb extremely quickly. This limits the rate at which new people start using it.
My idea is to have the amount of coin produced be higher when the difficulty is higher. To give an extreme example, lets say that when that when the difficulty is doubled, the block reward is also doubled. If this new coin gets popular, the price will go up. When the price goes up it will be profitable for people to buy mining hardware (or turn on the hardware they already have) so more people will mine. Since more people are mining, the difficulty will go up. Since the difficulty goes up, the block reward will go up. With more coins being created, the price will begin to go back down. With the price going back down, the difficulty will follow.
Doubling the reward when the difficulty doubles is rather extreme. I'm not sure if that would work or not. It could be much less extreme. For example, 50 coins could be created per block at 1 difficulty, but 500 coins per block at 1 million difficulty. This would decrease the deflation caused by increased usage, but it wouldn't eliminate it.
Any thoughts about this idea?