- ShouldObfuscate: Only operate on ModuleDefinitions
- Handle nested types better
- Do not obfuscate system types
- Move handling of constructor and generic parameters to ShouldObfuscate
- Implicit interface methods are handled by the IsVirtual handler