GPS, as someone above has mentioned, tells you direction, internal gyroscope knows the orientation and phone's intrinsic movement. Just set (and from time to time adjust) the direction of the movement when the phone uses GPS and align it with the gyroscope. Voila - compass-like action, and you may even tilt your phone slightly. No extra battery-consuming gadgetry needed.
Those who want extra hardware in their phone must either not need the battery or they enjoy putting bricks in their pocket. One thing is sure - they're short on imagination, as solutions for most problems are already within reach with existing hardware.
By the way, what's this "at least one upcoming iPhone" nonsense? I just saw a commercial on TV yesterday for iPhone that showed a rotating compass and said "you want to know which way you're going on a hike.... there's an app for that"