Fix property setters serialization, hasGetter->hasSetter
Adapt to protobuf style guide

Identifiers consisting of multiple words should be separated by an underscore,
repeated field names should be singular
Serialize property setter parameter names
Minor, reuse existing namer for built-ins
KotlinInfo now has only one parameter data

Name table is now also stored in data, before the serialized class.
ClassData is now public, since it's used in plenty of places as a holder of
deserialized protobuf classes.