Original version by Edmund Horner, from:

http://code.google.com/p/ejrh/source/browse/trunk/utils/pyan.py

Explanation:

http://ejrh.wordpress.com/2012/01/31/call-graphs-in-python-part-2/
