How can a portable 5V battery charge another 5V battery? For a device that is portable and can charge an iPhone 4 or Nintendo 3DS:
http://www.amazon.com/New-Trent-iCruiser-IMP1000-Blackberry/dp/B003ZBZ64Q
I wonder, if this device outputs 5V, and iPhone or the 3DS also has a 5V battery, then the electromotive force (EMF) at both sides should be the same.  If the force is the same at both sides, just like we we push a block on the table with 1 Newton force to the left, and there is also a 1 Newton force pushing the block to the right, the block will not accelerate to the left or right.  So when the iPhone is slightly charged, when it reaches 5V, then how can it be charged further?
Also, say, if the external device is 11,000 mAh, then, what if at some state, such as when it reaches 3,000 mAh, the voltage falls to 4.3V, then can it still charge another device that is 5V?  Or can the full 11,000 mAh energy all go to the other device?
A third related questions is, say if the device reaches 3,000 mAh, while the iPhone or 3DS or any other device reaches 6,000 mAh, won't the iPhone "reverse charge" the charger, or the energy keep on going both ways, and dissipate gradually as heat in the copper USB cable that connects them?
 A: These devices have DCDC converter, so it make battery voltage higher in expense of higher current consumption.
In fact, phone does not need 5V, usually 4.2-4.5 is ok.
Battery itself also does not provide 5V, it provides 3.7-4.2V. These 3.7V are fed into DCDC, and you have 5V output with any input voltage, so you always can charge devices out of it until all energy is sucked up.
A: 
Also, say, if the external device is 11,000 mAh, then, what if at some state, such as when it reaches 3,000 mAh, the voltage falls to 4.3V, then can it still charge another device that is 5V? Or can the full 11,000 mAh energy all go to the other device?

You are correct that a real battery cannot push out all of the available charge at a constant voltage.  But the published capacity takes that into account.  If a battery is marked at 11000mAh, then it is supposed to be able to produce that much charge for a given load while not falling below a particular voltage.  There will still be charge remaining in the battery, it's just not expected to be used.  In fact with lithium-ion, there is a tradeoff between the capacity and the lifetime.  So some systems limit the capacity further in order to gain lifetime.

A third related questions is, say if the device reaches 3,000 mAh, while the iPhone or 3DS or any other device reaches 6,000 mAh, won't the iPhone "reverse charge" the charger, or the energy keep on going both ways, and dissipate gradually as heat in the copper USB cable that connects them?

That won't happen for a few reasons.  First of all, the charge on a battery is not directly related to the voltage.  In fact for an ideal reaction, they would be unrelated.  Since current flow depends on the relative voltage, charging for a period doesn't dramatically change the current.  Add in the DC converters and this relationship is even more complex.
But the real reason is that the charging system won't let it.  There are sensors that will disconnect the batteries if the charging circuit doesn't have sufficient voltage to effectively charge the battery.
