"Further, it strikes me as a form of coupling if, every time you change the enum file, your change potentially effects every single module in your project." . . . .