At least for GPS, an add on that plugs into the 30 pin connector could work. Then, they would just need to write the software for it and serve it via a software update. A 3g adapter might be possible but would be cumbersome. With an update, the iPhone could detect the 3g module and switch over to 3g if it detects an available network. I could only see this as something I would use though only if I could tether as I wouldn't want to be carrying around my iPhone with an adapter sticking out of it. Plausible or impossible?