Re-split dbrary for macros; mess with enums

Made a working PGEnum.make macro, but it seems that macro paradise will be
needed to make it useful so didn't switch (yet).