widl: Always write WinRT enum type definitions.
MSVC supports enum type forward declarations and doesn't complain if the
enum is only defined in a later included file, but GCC requires enums to
be defined before being used in parameters or fields.
This emits every WinRT enum definition, unlike MIDL, before any typedef,
so that the generated headers then work with GCC.