Num2Str - A program to spell out numbers

I wrote this program for someone on Usenet who was writing a check writing
program.  He couldn't figure out how to make the program spell out the
check amount.  I thought it would be a neat mind exercise so I went ahead
and wrote this for him while I was still online.

I wrote it to spell out number the way *I* say them, which is with the word
'and' thrown in.  It is very easy to modify this.  Also, it should be easy
to modify it for those languages which pronounce their numbers in a purely
left to right way.  For those which don't (e.g. German), it shouldn't be
too difficult to change it.  I mean, c'mon, it's only 64 lines of code!

The way it is written it could handle numbers into the trillions, except
that it uses longints which are limited to about 2 billion.  Conversion to
real numbers would allow for higher numbers, but would require a slight
rewrite in the logic.  Also, who writes checks for $1,000,000,000,000.00???
