This paper was published in IBM Journal of Research and Development, Volume 47, Number 5/6, (Nov 2003), pages 641-652.