Who uses "shall" anymore? Does anyone really? If pressed, I can think of a few instances in which more grammatically astute people use the word - first person offers sometimes feature this word: "Shall I throw your laptop down the garbage chute?"
I had no idea, however, just how grammatically complex the issue of when to use the word can become. It's all the fault of Old English, as far as I understand. I'm far too hazy on the subject of the two words' origins myself to feel confident offering any explanation, but it has something to do with the fact that Old English did not really have a future tense, and these words were originally used in the preterite-present tense.
The two are distinguished primarily by their original connotations of command (shall) and wish (will). You can see this distinction more clearly in the way we use their conditional tense counterparts, should and would: "You should eat every one of those delicious lima beans" versus "I would equip myself for battle by learning how to use a lightsaber". The English grammarian, H.W. Fowler, gives some examples of using the two words in the "pure" system which derives more directly from Old English:
* Thou shalt not steal.
* Shall I open the door?
* You should not say such things.
* And shall Trelawney die?
* Whom should he meet but Jones? (...was it his fate...)
* Why should you suspect me?
* It should seem so. (It would apparently be incumbent on us to believe)
* I will have my way.
* I (he) asked him (me) to do it, but he (I) would not.
* I would not have done it for the world.
* I would be told to wait a while (Habitual).
* Will you come with me?
* I would I were dead.
* He will bite his nails, whatever I say.
* He will often stand on his head.
Now, of course, both shall and will function primarily as "auxiliary verbs" - words used to give additional grammatical information about another verb in the sentence - to approximate the future tense (which doesn't have specific independent verb forms in English), and this is where the issue becomes much more confusing. In the pure sense that I discussed above, you usually don't use "should" in the first person, because you don't usually give commands to yourself, and you don't usually use "would" in the second or third person, because it is used to connote a wish. However, these rules are reversed when expressing the "simple future".
When expressing simple future (i.e. making spontaneous decisions, making predictions, etc), shall and should are applied to the first person, whereas will and would are used in the second and third persons. From what I understand, this switch exists simply to distinguish this tense from the above pure sense in which the words can be used.
It switches back yet again, however, when expressing the modal future. This is a modification of the simple future, and is used to express the speaker's wish, intention, threat, promise, offer, refusal, and so on. Shall is used for second and third persons in this case, and will for first person. So if we had a conversation between the cyclops and Odysseus, for instance, using this tense, it might proceed like this:
Cyclops: I will eat you in a few minutes. (Cyclops' intention)
Odysseus: You shall regret it if you do. (Odysseus' threat)
Cyclops: You should have my lands and sheep if you let me eat you. (Cyclops' conditional offer)
Odysseus: I would poke your single eye out with a burning brand if I could. (Odysseus' conditional threat)
You get the idea.
Of course, no one really cares about such obscure grammar rules any more, especially not in the USA, where "will" is almost universally replacing "shall". I'd expect about the same is happening in most of the English-speaking world. This is probably a good thing, in some ways. If people can manage to mix up "has" and "have" the moment they are faced with a slightly complicated syntax in a sentence, it would be rather painful to hear what could happen if these rules were carefully followed.
And besides, insisting on such a manner of speech... would't be almost sadistic to all the people who have to learn our ridiculously complicated language? As if our spelling rules (or lack thereof) aren't bad enough....