more refactoring in prep for mock: start un-objectifying the MacroImpls