This reverts commit e9b87f43. There are issues with macros generating macros without an obvious simple fix so I'm going to revert this and try something different.