Original draft manuscript © Michael Sthultz, Jacob Uecker and Hal Berghel, 2005.  Published version to appear in M. Zelkowitz (ed), Advances in Computing - 2006, © Academic Press.