Macros to derive the ToCef trait implementation for any struct
as well as macros to annotate members to map to various CEF headers or key-value pairs.
This enables having a structured representation inside Rust to be serialized
as CEF log entries that can be written to log files or syslog.