K 10 svn:author V 5 luigi K 8 svn:date V 27 2001-02-09T23:18:09.000000Z K 7 svn:log V 305 Convert to the use of macros. In the process, change a couple of variable and field names so we do not use the same exact name for types, variable and fields and hopefully can understand which is which. On passing, simplify the logic in a few places. This commit has no functional changes. END