A Cap'n Proto schema for broker transport

Just a "what if we had this" idea.

$ mkdir build
$ cd build
$ cmake ../
$ make

$ ./main | hexdump -C
00000000  00 00 00 00 1c 00 00 00  00 00 00 00 00 00 02 00  |................|
00000010  05 00 00 00 4a 00 00 00  08 00 00 00 02 00 01 00  |....J...........|
00000020  2f 6d 79 74 6f 70 69 63  00 00 00 00 00 00 00 00  |/mytopic........|
00000030  0e 00 00 00 00 00 00 00  00 00 00 00 00 00 00 00  |................|
00000040  01 00 00 00 4f 00 00 00  0c 00 00 00 02 00 01 00  |....O...........|
00000050  02 00 00 00 00 00 00 00  01 00 00 00 00 00 00 00  |................|
00000060  00 00 00 00 00 00 00 00  02 00 00 00 00 00 00 00  |................|
00000070  01 00 00 00 00 00 00 00  00 00 00 00 00 00 00 00  |................|
00000080  0e 00 00 00 00 00 00 00  00 00 00 00 00 00 00 00  |................|
00000090  01 00 00 00 37 00 00 00  08 00 00 00 02 00 01 00  |....7...........|
000000a0  05 00 00 00 00 00 00 00  00 00 00 00 00 00 00 00  |................|
000000b0  0d 00 00 00 4a 00 00 00  0e 00 00 00 00 00 00 00  |....J...........|
000000c0  00 00 00 00 00 00 00 00  09 00 00 00 07 00 00 00  |................|
000000d0  7a 65 65 6b 5f 69 6e 69  74 00 00 00 00 00 00 00  |zeek_init.......|
000000e0  00 00 00 00 02 00 01 00                           |........|
000000e8

$ ./main  | capnp convert binary:packed | hexdump -C
00000000  10 1c 40 02 11 05 4a 51  08 02 01 ff 2f 6d 79 74  |..@...JQ..../myt|
00000010  6f 70 69 63 00 00 00 01  0e 00 00 11 01 4f 51 0c  |opic.........OQ.|
00000020  02 01 01 02 01 01 00 00  01 02 01 01 00 00 01 0e  |................|
00000030  00 00 11 01 37 51 08 02  01 01 05 00 00 11 0d 4a  |....7Q.........J|
00000040  01 0e 00 00 11 09 07 ff  7a 65 65 6b 5f 69 6e 69  |........zeek_ini|
00000050  00 01 74 50 02 01                                 |..tP..|
00000056

$ ./main  | capnp convert binary:json ../broker.capnp Envelope
{ "topic": "/mytopic",
  "data": {"list": [
    {"count": "1"},
    {"count": "1"},
    {"list": [
      {"string": [122, 101, 101, 107, 95, 105, 110, 105, 116]},
      {"list": []} ]} ]} }