Great article.  Really elagant code.  I will try this approch to cut down on code in one of my projects.