Expand description

Nested message and enum types in ProtoDatum.

Enums

NB: Proto oneof ids 1..=15 get encoded in 1 byte and so we should reserve them for the datum types we expect to be most popular.