Add initial protobuf support