Add protobuf descriptor

Intermediate PR to receive early feedback.
Yes, please do. Basedescriptor will provide the interface to implement as well as basic methods that can be useful to various (future) descriptors.