If you know you want to do peds, FM, IM, EM, etc, or even like general surgery, just go to a good DO school. You can still do competitive specialties at a DO, it just makes your life harder because of the (stupid) bias that's out there. But if you're like me and know you don't want to be a super surgeon, I wouldn't even bother worrying about your GPA. Just crush your MCAT and make sure the rest of your app is good, you'll get in somewhere.
If your dreams are to be a pediatric neurodermatologist at Harvard, there are threads on SDN you can read about GPA repair. But there really isn't any explaining it away; you're applying with it, and a 3.4 will make it harder to get into "top ranked" (I hate this terminology) schools. Sorry bud.
Again though- most doctors aren't MOHS surgeons, most doctors are internists/pediatricians/etc, and it's not like Blue Cross is going to reimburse you less because you went to VCOM instead of UAB. Like Angler said, just chalk it up to immaturity, if they even ask you about it.