support enums in Compiler.keep and don't include abstract implementation classes when keeping module