Cleanups, including making better use of the consume macro