The basic idea to a spigot algorithm for an irrational number is that you can find the nth decimal digit of the number in some base without having to calculate any of the digits to the left of it. That sounds like an impossible trick, but it's based on the fact that some irrational numbers can be expressed as infinite summations, where each piece of the summation contributes to only one digit of the number (again, in some base).
So, let's talk about pi. In the base of pi, there are indeed infinite summations that converge to pi. One that can be used to get the nth digit of pi in base 16 is known as the Bailey-Borwein-Plouffe Formula. In other words, calculate the nth term of this summation, and basically you have the nth digit of pi in base 16. In the formula (link below), you'll notice that 1/16^k term in the summation, which is the reason it produces the digits for pi in base 16 Neat trick, eh?
* * * * *
Adding to the above post: I just did a search on "Bailey-Borwein-Plouffe" and got a remarkable number of hits. There's a lot of Web pages that discuss this formula, and some of them do attempt to make the explanation understandable. Try doing a search on this formula, and see if you don't find a Web page with an explanation you like. :)