clarify macro magic using 'macro' for element macros, explain more in an enum.h comment