Changeover watch to use streaming serialization. Properly version the watch objects. Implement simple framing for JSON and Protobuf (but not YAML).
Provide a core protobuf serializer that can either write objects with an envelope (a 4 byte prefix and a runtime.Object) or raw to a byte array.