Everything you listed works just fine. The CM page for the Bionic says that the flash only works in "Preview Mode" but I think that's old information as the flash seems to be working just fine. I don't send that many MMS messages, but those I've sent worked just fine as well as the few I've received. No issues at all with GPS, Bluetooth, or SMS (and those I use several times a day every day).
Battery life is also CONSIDERABLY better than any other ROM I've used to date. There are a few more KEXEC ROMS out there now like CM, but most of the older ROMS were based on the Motorola code with parts stripped away. As I stated earlier, CM is pure AOSP, without a TRACE of "MotoBlur" or anything else from Verizon or Motorola. I think the lack of all of that bloatware running away in the background is the cause of most of the battery drain and progressively more sluggish performance people report in Android phones. Nowadays, a charge lasts all day, even if I leave the phone in 4G/LTE mode all the time (I used to leave the phone in 3G/CDMA mode to stretch out the battery previously).
I was going to pitch my Bionic when the contract ended and switch over to T-Mobile and a Nexus phone on their unlimited data plan... but now I can keep my unlimited data AND stick with Verizon's heftier network knowing that the Bionic will continue to get updates to keep it current. The only thing the newer phones offer that I don't have is NFC... but if I haven't had it before, I'm not missing anything now.