I am in BLR for the week and things have definitely improved. I was able to easily get Rs. 4,500 from ATMs on successive days without a hassle. I always withdraw an odd number of rupees to ensure that I get smaller bills (Rs. 100) and not the Rs. @2,000.
many of the stores had no problem accepting my US credit cards (including AmEx). I didn't try using USD for payments.
Forex takes both cash or travelers checks, but I would suggest cash as it is easier to exchange that. Please carry $20 or $50 bills as it is easier to exchange them.
there were absolutely no lines (may be one or two people)at the ATMs (in BLR) and most of the ATMs were operational though some had notices indicating that the ATM would only dispense Rs. 2,000 bills.