This is the relevant theorem:
https://math.stackexchange.com/questions/543051/markov-chain...
This means you should eventually see each person hoard all of the money in turn. Try it with 5 people and 5 dollars each. Then the system only has 29 choose 25 = 23751 states[1], which should give your computer enough time to hit them all.
Edit: Here, Python "proof"
from random import randint
numpeople = 5
initmoney = 5
ledger = [initmoney]*numpeople
while True:
recipients = []
for i in range(numpeople):
if ledger[i] == 0:
recipient = None
else:
recipient = randint(0, numpeople-2)
if recipient >= i:
recipient += 1
recipients.append(recipient)
for i, recipient in enumerate(recipients):
if recipient is not None:
ledger[i] -= 1
ledger[recipient] += 1
if max(ledger) == initmoney*numpeople - 1:
print ledger
----[1] https://en.wikipedia.org/wiki/Stars_and_bars_(combinatorics)...