including but not limited to:
- detect protobuf well-known types
- detect NonUserCodeAttribute
- detect ObsoleteAttribute to mark protobufs/fields as deprecated
- parse generated client/server types for gRPC services
- fix "optional" parsing
- fix obfuscated name translation
- fix foreign nested protobufs
- support protobuf editions and corresponding options
- rewrite protobuf models to better reflect the specification, including decoupling toplevels and files
- rewrite a bunch of things to make more sense
including but not limited to:
- Move parsing logic to library project
- Expanding coverage of the proto3 spec
- Option to parse types from only a specified assembly
- More accurate field name translation
- Accept custom lookup functions for types and names
- Some resilience to obfuscation
- Fix infinite recursion bug causing stack overflow