Google / Google Voice / Gizmo5 or any SIP provider offers data calls. I've been messing around with this on my iPad and it's very close to being viable. There's no question it is on Android.
I hope Apple keeps moving in this direction but I doubt they'll be the first to route around the carriers. Right now all signs point to Apple being happily engaged to AT&T.