So, here is the gut of Sphero
How rc ball work
It seems that it creates some sort of planetary gear assembly that gets controlled by remote. Now since there are two of them, you can basically control the speed of each of them to have differential speed this will cause the bot to turn. It seems pretty basic. Wrapped around in a sphere it gives an illusion of being non-direction, but it is not.
Here they have explained in a layman terms:
In short, it drives like a hamster wheel spins. The robot drives up the side of its own shell just like a hamster runs up the side of its wheel. Of course, the hamster never gets anywhere. No matter how hard it tries to climb, gravity pulls it down and the wheel falls away beneath it. Sphero works the same way – constantly climbing uphill, scrambling up the side of its own shell only to have the shell roll out from under it – which causes Sphero to roll. In a sense, Sphero runs on gravity.
Source:
http://www.howitworksdaily.com/technology/how-the-sphero-works/