I got this portable speaker for my wife (not for biking purposes) and it's good quality sound, pretty loud, wireless, and plays for 4-5 hours or so on a charge. You could have an iphone in a jersey pocket and this could pick up the signal. It's not cheap and weighs a few ounces, but again good quality.
http://www.amazon.com/Soundmatters-f.../dp/B00313JD06
Would just have to figure out how to mount it on the handlebars, frame, or whatever....duct tape, velcro?
As to whether it's a good idea to play tunes while riding... I haven't confiscated her speaker for the bike yet, but I've considered it.