Batteries can always be replaced with aftermarket extended batteries, that usually isnt a problem for most.
I have a rooted Samsung Vibrant (android for O.P.), and I can sync my itunes playlist on it with the GB's of space I got.. I tether internet connectivity.. I can put a front facing camera on it if I want.. I can get away from the android market and install apps from other sources.. I can overclock/underclock my phone if I want to save battery life or make the phone perform even better than it does now.. I have flash available to me already (have had it for a while actually with SkyFire browser)...
what else am I missing that I can do on an android phone....
jailbroken iphone 4 is probably the best. But if you don't jailbreak (which I still don't think you should, unless you know what you're doing, which most people don't) its defiantely worse than android. Can't really comment on BB