Map the old JSON field format into the protocol buffer format

The JSON map is flattened into a series of name/value pairs to conform with
the protocol buffer array of attributes.  The dot notation in the name represents
the flattened hierarchy i.e., "item.name"
Add a Protobuf decoder
Add protobuf encoders, decoders, and TCP transport