diff --git a/docs/vs-cpp-protos.md b/docs/vs-cpp-protos.md
index 5d30c54..166a59f 100644
--- a/docs/vs-cpp-protos.md
+++ b/docs/vs-cpp-protos.md
@@ -1,3 +1,4 @@
+<?% config.freshness.reviewed = '2022-04-12' %?>
 
 # upb vs. C++ Protobuf Design
 
diff --git a/docs/wrapping-upb.in.md b/docs/wrapping-upb.in.md
deleted file mode 100644
index 850fefe..0000000
--- a/docs/wrapping-upb.in.md
+++ /dev/null
@@ -1,372 +0,0 @@
-
-<!---
-This document contains embedded graphviz diagrams inside ```dot blocks.
-
-To convert it to rendered form using render.py:
-  $ ./render.py wrapping-upb.in.md
-
-You can also live-preview this document with all diagrams using Markdown Preview Enhanced
-in Visual Studio Code:
-  https://marketplace.visualstudio.com/items?itemName=shd101wyy.markdown-preview-enhanced
---->
-
-# Wrapping upb in other languages
-
-upb is a C kernel that is designed to be wrapped in other languages.  This is a
-guide for creating a new protobuf implementation based on upb.
-
-## What you will need
-
-There are certain things that the language runtime must provide in order to be
-wrapped by upb.
-
-1. **Finalizers, Destructors, or Cleaners**: This is one unavoidable
-   requirement: the language *must* provide finalizers or destructors of some sort.
-   There must be a way of calling a C function when the language GCs or otherwise
-   destroys an object.  We don't care much whether it is a finalizer, a destructor,
-   or a cleaner, as long as it gets called eventually when the object is destroyed.
-   Without finalizers, we would have no way of cleaning up upb data and everything
-   would leak.
-2. **HashMap with weak values**: This is not an absolute requirement, but in
-   languages with automatic memory management, we generally end up wanting a
-   hash map with weak values to act as a `upb_msg* -> wrapper` object cache.
-   We want the values to be weak (not the keys).
-
-## Reflection vs. Direct Access
-
-Each language wrapping upb gets to decide whether it will access messages
-through *reflection* or through *direct access*.  This decision has some deep
-implications that will affect the design, features, and performance of your
-library.
-
-### Reflection
-
-The simplest option is to load full reflection data into the upb library at
-runtime.  You can load reflection data using serialized descriptors, which are a
-stable and widely supported format across all protobuf tooling.
-
-```c
-  // A upb_symtab is a dynamic container that we can load reflection data into.
-  upb_symtab* symtab = upb_symtab_new();
-
-  // We load reflection data via a serialized descriptor.  The code generator
-  // for your language should embed serialized descriptors into your generated
-  // files. For each generated file loaded by your library, you can add the
-  // serialized descriptor to the symtab as shown.
-  upb_arena *tmp = upb_arena_new();
-  google_protobuf_FileDescriptorProto* file =
-      google_protobuf_FileDescriptorProto_parse(desc_data, desc_size, tmp);
-  if (!file || !upb_symtab_addfile(symtab, file, NULL)) {
-    // Handle error.
-  }
-  upb_arena_free(tmp);
-
-  // At application exit, we free the symtab.
-  upb_symtab_free(symtab);
-```
-
-The `upb_symtab` will give you full access to all data from the `.proto` file,
-including convenient APIs like looking up a field by name. It will allow you to
-use JSON and text format.  The APIs for accessing a message through reflection
-are simple and well-supported.  These APIs cleanly encapsulate upb's internal
-implementation details.  
-
-```c
-  upb_symtab* symtab = BuildSymtab();
-
-  // Look up a message type in the symtab.
-  const upb_msgdef* m = upb_symtab_lookupmsg(symtab, "FooMessage");
-
-  // Construct a new message of this type, via reflection.
-  upb_arena *arena = upb_arena_new();
-  upb_msg *msg = upb_msg_new(m, arena);
-
-  // Set a message field using reflection.
-  const upb_fielddef* f = upb_msgdef_ntof("bar_field");
-  upb_msgval val = {.int32_val = 123};
-  upb_msg_set(m, f, val, arena);
-
-  // Free the message and symtab.
-  upb_arena_free(arena);
-  upb_symtab_free(symtab);
-```
-
-Using reflection is a natural choice in heavily reflective, dynamic runtimes
-like Python, Ruby, PHP, or Lua.  These languages generally perform method
-dispatch through a dictionary/hash table anyway, so we are not adding any extra
-overhead by using upb's hash table to lookup fields by name at field access
-time.
-
-### Direct Access
-
-Using reflection has some downsides.  Reflection data is relatively large, both
-in your binary (at rest) and in RAM (at runtime).  It contains names of
-everything, and these names will be exposed in your binary.  Reflection APIs for
-accessing a message will have more overhead than you might want, especially if
-crossing the FFI boundary for your language runtime imposes significant
-overhead.
-
-We can reduce these overheads by using *direct access*.  upb's parser and
-serializer do not actually require full reflection data, they use a more compact
-data structure known as **mini tables**.  Mini tables will take up less space
-than reflection, both in the binary and in RAM, and they will not leak field
-names.  Mini tables will let us parse and serialize binary wire format data
-without reflection.
-
-```c
-  // TODO: demonstrate upb API for loading mini table data at runtime.
-  // This API does not exist yet.
-```
-
-To access messages themselves without the reflection API, we will be using
-different, lower-level APIs that will require you to supply precise data such as
-the offset of a given field.  This is information that will come from the upb
-compiler framework, and the correctness (and even memory safety!) of the program
-will rely on you passing these values through from the upb compiler libraries to
-the upb runtime correctly.
-
-```c
-  // TODO: demonstrate using low-level APIs for direct field access.
-  // These APIs do not exist yet.
-```
-
-It can even be possible in certain circumstances to bypass the upb API completely
-and access raw field data directly at a given offset, using unsafe APIs like
-`sun.misc.unsafe`.  This can theoretically allow for field access that is no
-more expensive than referencing a struct/class field.
-
-```java
-import sun.misc.Unsafe;
-
-class FooProto {
-  private final long addr;
-  private final Arena arena;
-
-  // Accessor that a Java library built on upb could conceivably generate.
-  long getFoo() {
-    // The offset 1234 came from the upb compiler library, and was injected by the
-    // Java+upb code generator.
-    return Unsafe.getLong(self.addr + 1234);
-  }
-}
-```
-
-It is always possible to load reflection data as desired, even if your library
-is designed primarily around direct access.  Users who want to use JSON, text
-format, or reflection could potentially load reflection data from separate
-generated modules, for cases where they do not mind the size overhead or the
-leaking of field names. You do not give up any of these possibilities by using
-direct access.
-
-However, using direct access does have some noticeable downsides.  It requires
-tighter coupling with upb's implementation details, as the mini table format is
-upb-specific and requires building your code generator against upb's compiler
-libraries.  Any direct access of memory is especially tightly coupled, and would
-need to be changed if upb's in-memory format ever changes.  It also is more
-prone to hard-to-debug memory errors if you make any mistakes.
-
-## Memory Management
-
-One of the core design challenges when wrapping upb is memory management.  Every
-language runtime will have some memory management system, whether it is
-garbage collection, reference counting, manual memory management, or some hybrid
-of these.  upb is written in C and uses arenas for memory management, but upb is
-designed to integrate with a wide variety of memory management schemes, and it
-provides a number of tools for making this integration as smooth as possible.
-
-### Arenas
-
-upb defines data structures in C to represent messages, arrays (repeated
-fields), and maps.  A protobuf message is a hierarchical tree of these objects.
-For example, a relatively simple protobuf tree might look something like this:
-
-```dot {align="center"}
-digraph G {
-  rankdir=LR; 
-  newrank=true;
-  node [style="rounded,filled" shape=box colorscheme=accent8 fillcolor=1, ordering=out]
-  upb_msg -> upb_msg2;
-  upb_msg -> upb_array;
-  upb_msg [label="upb Message" fillcolor=1]
-  upb_msg2 [label="upb Message"];
-  upb_array [label="upb Array"]
-}
-```
-
-All upb objects are allocated from an arena.  An arena lets you allocate objects
-individually, but you cannot free individual objects; you can only free the arena
-as a whole.  When the arena is freed, all of the individual objects allocated
-from that arena are freed together.
-
-```dot {align="center"}
-digraph G {
-  rankdir=LR;
-  newrank=true;
-  subgraph cluster_0 {
-    label = "upb Arena"
-    graph[style="rounded,filled" fillcolor=gray]
-    node [style="rounded,filled" shape=box colorscheme=accent8 fillcolor=1, ordering=out]
-    upb_msg -> upb_array;
-    upb_msg -> upb_msg2;
-    upb_msg [label="upb Message" fillcolor=1]
-    upb_msg2 [label="upb Message"];
-    upb_array [label="upb Array"];
-  }
-}
-```
-
-In simple cases, the entire tree of objects will all live in a single arena.
-This has the nice property that there cannot be any dangling pointers between
-objects, since all objects are freed at the same time.
-
-However upb allows you to create links between any two objects, whether or
-not they are in the same arena.  The library does not know or care what arenas
-the objects are in when you create links between them.
-
-```dot {align="center"}
-digraph G {
-  rankdir=LR;
-  newrank=true;
-  subgraph cluster_0 {
-    label = "upb Arena 1"
-    graph[style="rounded,filled" fillcolor=gray]
-    node [style="rounded,filled" shape=box colorscheme=accent8 fillcolor=1, ordering=out]
-    upb_msg -> upb_array;
-    upb_msg -> upb_msg2;
-    upb_msg [label="upb Message 1" fillcolor=1]
-    upb_msg2 [label="upb Message 2"];
-    upb_array [label="upb Array"];
-  }
-  subgraph cluster_1 {
-    label = "upb Arena 2"
-    graph[style="rounded,filled" fillcolor=gray]
-    node [style="rounded,filled" shape=box colorscheme=accent8 fillcolor=1]
-    upb_msg3;
-  }
-  upb_msg2 -> upb_msg3;
-  upb_msg3 [label="upb Message 3"];
-}
-```
-
-When objects are on separate arenas, it is the user's responsibility to ensure
-that there are no dangling pointers.  In the example above, this means Arena 2
-must outlive Message 1 and Message 2.
-
-### Integrating GC with upb
-
-In languages with automatic memory management, the goal is to handle all of the
-arenas behind the scenes, so that the user does not have to manage them manually
-or even know that they exist.
-
-We can achieve this goal if we set up the object graph in a particular way.  The
-general strategy is to create wrapper objects around all of the C objects,
-including the arena.  Our key goal is to make sure the arena wrapper is not
-GC'd until all of the C objects in that arena have become unreachable.
-
-For this example, we will assume we are wrapping upb in Python:
-
-```dot {align="center"}
-digraph G { 
-  rankdir=LR;
-  newrank=true;
-  compound=true;
-  
-  subgraph cluster_1 {
-    label = "upb Arena"
-    graph[style="rounded,filled" fillcolor=gray]
-    node [style="rounded,filled" shape=box colorscheme=accent8 fillcolor=1, ordering=out]
-    upb_msg -> upb_array [style=dashed];
-    upb_msg -> upb_msg2 [style=dashed];
-    upb_msg [label="upb Message" fillcolor=1]
-    upb_msg2 [label="upb Message"];
-    upb_array [label="upb Array"]
-    dummy [style=invis]
-  }
-  subgraph cluster_python {
-    node [style="rounded,filled" shape=box colorscheme=accent8 fillcolor=2]
-    peripheries=0
-    py_upb_msg [label="Python Message"];
-    py_upb_msg2 [label="Python Message"];
-    py_upb_arena [label="Python Arena"];
-  }
-  py_upb_msg -> upb_msg [style=dashed];
-  py_upb_msg2->upb_msg2 [style=dashed];
-  py_upb_msg2 -> py_upb_arena [color=springgreen4];
-  py_upb_msg -> py_upb_arena [color=springgreen4];
-  py_upb_arena -> dummy [lhead=cluster_1, color=red];
-  {
-     rank=same;
-     upb_msg;
-     py_upb_msg;
-  }
-  {
-     rank=same;
-     upb_array;
-     upb_msg2;
-     py_upb_msg2;
-  }
-  {  rank=same;
-     dummy;
-     py_upb_arena;
-  }
-  dummy->upb_array [style=invis];
-  dummy->upb_msg2 [style=invis];
-
-  subgraph cluster_01 { 
-    node [shape=plaintext]
-    peripheries=0
-    key [label=<<table border="0" cellpadding="2" cellspacing="0" cellborder="0">
-      <tr><td align="right" port="i1">raw ptr</td></tr>
-      <tr><td align="right" port="i2">unique ptr</td></tr>
-      <tr><td align="right" port="i3">shared (GC) ptr</td></tr>
-      </table>>]
-    key2 [label=<<table border="0" cellpadding="2" cellspacing="0" cellborder="0">
-      <tr><td port="i1">&nbsp;</td></tr>
-      <tr><td port="i2">&nbsp;</td></tr>
-      <tr><td port="i3">&nbsp;</td></tr>
-      </table>>]
-    key:i1:e -> key2:i1:w [style=dashed]
-    key:i2:e -> key2:i2:w [color=red]
-    key:i3:e -> key2:i3:w [color=springgreen4]
-  }
-    key2:i1:w -> upb_msg [style=invis];
-  {
-    rank=same;
-    key;
-    upb_msg;
-  }
-}
-```
-
-In this example we have three different kinds of pointers:
-
-* **raw ptr**: This is a pointer that carries no ownership.
-* **unique ptr**: This is a pointer has *unique ownership* of the target.  The owner
-  will free the target in its destructor (or finalizer, or cleaner).  There can
-  only be a single unique pointer to a given object.
-* **shared (GC) ptr**: This is a pointer that has *shared ownership* of the
-  target.  Many objects can point to the target, and the target will be deleted
-  only when all such references are gone.  In a runtime with automatic memory
-  management (GC), this is a reference that participates in GC.  In Python such
-  references use reference counting, but in other VMs they may use mark and
-  sweep or some other form of GC instead.
-
-The Python Message wrappers have only raw pointers to the underlying message,
-but they contain a shared pointer to the arena that will ensure that the raw
-pointer remains valid.  Only when all message wrapper objects are destroyed
-will the Python Arena become unreachable, and the upb arena ultimately freed.
-
-### Links between arenas with "Fuse"
-
-The design given above works well for objects that live in a single arena. But
-what if a user wants to create a link between two objects in different arenas?
-
-TODO
-
-## UTF-8 vs. UTF-16
-
-TODO
-
-## Object Cache
-
-TODO
diff --git a/docs/wrapping-upb.md b/docs/wrapping-upb.md
index ad35428..10a2c6d 100644
--- a/docs/wrapping-upb.md
+++ b/docs/wrapping-upb.md
@@ -180,18 +180,40 @@
 fields), and maps.  A protobuf message is a hierarchical tree of these objects.
 For example, a relatively simple protobuf tree might look something like this:
 
-<div align=center>
-<img src='wrapping-upb/1.svg'/>
-</div>
+```dot {align="center"}
+digraph G {
+  rankdir=LR;
+  newrank=true;
+  node [style="rounded,filled" shape=box colorscheme=accent8 fillcolor=1, ordering=out]
+  upb_msg -> upb_msg2;
+  upb_msg -> upb_array;
+  upb_msg [label="upb Message" fillcolor=1]
+  upb_msg2 [label="upb Message"];
+  upb_array [label="upb Array"]
+}
+```
 
 All upb objects are allocated from an arena.  An arena lets you allocate objects
 individually, but you cannot free individual objects; you can only free the arena
 as a whole.  When the arena is freed, all of the individual objects allocated
 from that arena are freed together.
 
-<div align=center>
-<img src='wrapping-upb/2.svg'/>
-</div>
+```dot {align="center"}
+digraph G {
+  rankdir=LR;
+  newrank=true;
+  subgraph cluster_0 {
+    label = "upb Arena"
+    graph[style="rounded,filled" fillcolor=gray]
+    node [style="rounded,filled" shape=box colorscheme=accent8 fillcolor=1, ordering=out]
+    upb_msg -> upb_array;
+    upb_msg -> upb_msg2;
+    upb_msg [label="upb Message" fillcolor=1]
+    upb_msg2 [label="upb Message"];
+    upb_array [label="upb Array"];
+  }
+}
+```
 
 In simple cases, the entire tree of objects will all live in a single arena.
 This has the nice property that there cannot be any dangling pointers between
@@ -201,9 +223,30 @@
 not they are in the same arena.  The library does not know or care what arenas
 the objects are in when you create links between them.
 
-<div align=center>
-<img src='wrapping-upb/3.svg'/>
-</div>
+```dot {align="center"}
+digraph G {
+  rankdir=LR;
+  newrank=true;
+  subgraph cluster_0 {
+    label = "upb Arena 1"
+    graph[style="rounded,filled" fillcolor=gray]
+    node [style="rounded,filled" shape=box colorscheme=accent8 fillcolor=1, ordering=out]
+    upb_msg -> upb_array;
+    upb_msg -> upb_msg2;
+    upb_msg [label="upb Message 1" fillcolor=1]
+    upb_msg2 [label="upb Message 2"];
+    upb_array [label="upb Array"];
+  }
+  subgraph cluster_1 {
+    label = "upb Arena 2"
+    graph[style="rounded,filled" fillcolor=gray]
+    node [style="rounded,filled" shape=box colorscheme=accent8 fillcolor=1]
+    upb_msg3;
+  }
+  upb_msg2 -> upb_msg3;
+  upb_msg3 [label="upb Message 3"];
+}
+```
 
 When objects are on separate arenas, it is the user's responsibility to ensure
 that there are no dangling pointers.  In the example above, this means Arena 2
@@ -222,9 +265,78 @@
 
 For this example, we will assume we are wrapping upb in Python:
 
-<div align=center>
-<img src='wrapping-upb/4.svg'/>
-</div>
+```dot {align="center"}
+digraph G {
+  rankdir=LR;
+  newrank=true;
+  compound=true;
+
+  subgraph cluster_1 {
+    label = "upb Arena"
+    graph[style="rounded,filled" fillcolor=gray]
+    node [style="rounded,filled" shape=box colorscheme=accent8 fillcolor=1, ordering=out]
+    upb_msg -> upb_array [style=dashed];
+    upb_msg -> upb_msg2 [style=dashed];
+    upb_msg [label="upb Message" fillcolor=1]
+    upb_msg2 [label="upb Message"];
+    upb_array [label="upb Array"]
+    dummy [style=invis]
+  }
+  subgraph cluster_python {
+    node [style="rounded,filled" shape=box colorscheme=accent8 fillcolor=2]
+    peripheries=0
+    py_upb_msg [label="Python Message"];
+    py_upb_msg2 [label="Python Message"];
+    py_upb_arena [label="Python Arena"];
+  }
+  py_upb_msg -> upb_msg [style=dashed];
+  py_upb_msg2->upb_msg2 [style=dashed];
+  py_upb_msg2 -> py_upb_arena [color=springgreen4];
+  py_upb_msg -> py_upb_arena [color=springgreen4];
+  py_upb_arena -> dummy [lhead=cluster_1, color=red];
+  {
+     rank=same;
+     upb_msg;
+     py_upb_msg;
+  }
+  {
+     rank=same;
+     upb_array;
+     upb_msg2;
+     py_upb_msg2;
+  }
+  {  rank=same;
+     dummy;
+     py_upb_arena;
+  }
+  dummy->upb_array [style=invis];
+  dummy->upb_msg2 [style=invis];
+
+  subgraph cluster_01 {
+    node [shape=plaintext]
+    peripheries=0
+    key [label=<<table border="0" cellpadding="2" cellspacing="0" cellborder="0">
+      <tr><td align="right" port="i1">raw ptr</td></tr>
+      <tr><td align="right" port="i2">unique ptr</td></tr>
+      <tr><td align="right" port="i3">shared (GC) ptr</td></tr>
+      </table>>]
+    key2 [label=<<table border="0" cellpadding="2" cellspacing="0" cellborder="0">
+      <tr><td port="i1">&nbsp;</td></tr>
+      <tr><td port="i2">&nbsp;</td></tr>
+      <tr><td port="i3">&nbsp;</td></tr>
+      </table>>]
+    key:i1:e -> key2:i1:w [style=dashed]
+    key:i2:e -> key2:i2:w [color=red]
+    key:i3:e -> key2:i3:w [color=springgreen4]
+  }
+    key2:i1:w -> upb_msg [style=invis];
+  {
+    rank=same;
+    key;
+    upb_msg;
+  }
+}
+```
 
 In this example we have three different kinds of pointers:
 
diff --git a/docs/wrapping-upb/1.svg b/docs/wrapping-upb/1.svg
deleted file mode 100644
index bb91832..0000000
--- a/docs/wrapping-upb/1.svg
+++ /dev/null
@@ -1,43 +0,0 @@
-<?xml version="1.0" encoding="UTF-8" standalone="no"?>
-<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN"
- "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
-<!-- Generated by graphviz version 2.43.0 (0)
- -->
-<!-- Title: G Pages: 1 -->
-<svg width="222pt" height="98pt"
- viewBox="0.00 0.00 222.00 98.00" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
-<g id="graph0" class="graph" transform="scale(1 1) rotate(0) translate(4 94)">
-<title>G</title>
-<polygon fill="white" stroke="transparent" points="-4,4 -4,-94 218,-94 218,4 -4,4"/>
-<!-- upb_msg -->
-<g id="node1" class="node">
-<title>upb_msg</title>
-<path fill="#7fc97f" stroke="black" d="M77,-63C77,-63 12,-63 12,-63 6,-63 0,-57 0,-51 0,-51 0,-39 0,-39 0,-33 6,-27 12,-27 12,-27 77,-27 77,-27 83,-27 89,-33 89,-39 89,-39 89,-51 89,-51 89,-57 83,-63 77,-63"/>
-<text text-anchor="middle" x="44.5" y="-41.3" font-family="Times,serif" font-size="14.00">upb Message</text>
-</g>
-<!-- upb_msg2 -->
-<g id="node2" class="node">
-<title>upb_msg2</title>
-<path fill="#7fc97f" stroke="black" d="M202,-90C202,-90 137,-90 137,-90 131,-90 125,-84 125,-78 125,-78 125,-66 125,-66 125,-60 131,-54 137,-54 137,-54 202,-54 202,-54 208,-54 214,-60 214,-66 214,-66 214,-78 214,-78 214,-84 208,-90 202,-90"/>
-<text text-anchor="middle" x="169.5" y="-68.3" font-family="Times,serif" font-size="14.00">upb Message</text>
-</g>
-<!-- upb_msg&#45;&gt;upb_msg2 -->
-<g id="edge1" class="edge">
-<title>upb_msg&#45;&gt;upb_msg2</title>
-<path fill="none" stroke="black" d="M89.21,-54.6C97.55,-56.43 106.36,-58.36 114.97,-60.25"/>
-<polygon fill="black" stroke="black" points="114.41,-63.71 124.93,-62.44 115.91,-56.87 114.41,-63.71"/>
-</g>
-<!-- upb_array -->
-<g id="node3" class="node">
-<title>upb_array</title>
-<path fill="#7fc97f" stroke="black" d="M193,-36C193,-36 146,-36 146,-36 140,-36 134,-30 134,-24 134,-24 134,-12 134,-12 134,-6 140,0 146,0 146,0 193,0 193,0 199,0 205,-6 205,-12 205,-12 205,-24 205,-24 205,-30 199,-36 193,-36"/>
-<text text-anchor="middle" x="169.5" y="-14.3" font-family="Times,serif" font-size="14.00">upb Array</text>
-</g>
-<!-- upb_msg&#45;&gt;upb_array -->
-<g id="edge2" class="edge">
-<title>upb_msg&#45;&gt;upb_array</title>
-<path fill="none" stroke="black" d="M89.21,-35.4C100.42,-32.94 112.49,-30.3 123.75,-27.82"/>
-<polygon fill="black" stroke="black" points="124.8,-31.18 133.81,-25.61 123.3,-24.34 124.8,-31.18"/>
-</g>
-</g>
-</svg>
diff --git a/docs/wrapping-upb/2.svg b/docs/wrapping-upb/2.svg
deleted file mode 100644
index 7752f82..0000000
--- a/docs/wrapping-upb/2.svg
+++ /dev/null
@@ -1,48 +0,0 @@
-<?xml version="1.0" encoding="UTF-8" standalone="no"?>
-<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN"
- "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
-<!-- Generated by graphviz version 2.43.0 (0)
- -->
-<!-- Title: G Pages: 1 -->
-<svg width="254pt" height="153pt"
- viewBox="0.00 0.00 254.00 153.00" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
-<g id="graph0" class="graph" transform="scale(1 1) rotate(0) translate(4 149)">
-<title>G</title>
-<polygon fill="white" stroke="transparent" points="-4,4 -4,-149 250,-149 250,4 -4,4"/>
-<g id="clust1" class="cluster">
-<title>cluster_0</title>
-<path fill="gray" stroke="black" d="M20,-8C20,-8 226,-8 226,-8 232,-8 238,-14 238,-20 238,-20 238,-125 238,-125 238,-131 232,-137 226,-137 226,-137 20,-137 20,-137 14,-137 8,-131 8,-125 8,-125 8,-20 8,-20 8,-14 14,-8 20,-8"/>
-<text text-anchor="middle" x="123" y="-121.8" font-family="Times,serif" font-size="14.00">upb Arena</text>
-</g>
-<!-- upb_msg -->
-<g id="node1" class="node">
-<title>upb_msg</title>
-<path fill="#7fc97f" stroke="black" d="M93,-79C93,-79 28,-79 28,-79 22,-79 16,-73 16,-67 16,-67 16,-55 16,-55 16,-49 22,-43 28,-43 28,-43 93,-43 93,-43 99,-43 105,-49 105,-55 105,-55 105,-67 105,-67 105,-73 99,-79 93,-79"/>
-<text text-anchor="middle" x="60.5" y="-57.3" font-family="Times,serif" font-size="14.00">upb Message</text>
-</g>
-<!-- upb_array -->
-<g id="node2" class="node">
-<title>upb_array</title>
-<path fill="#7fc97f" stroke="black" d="M209,-52C209,-52 162,-52 162,-52 156,-52 150,-46 150,-40 150,-40 150,-28 150,-28 150,-22 156,-16 162,-16 162,-16 209,-16 209,-16 215,-16 221,-22 221,-28 221,-28 221,-40 221,-40 221,-46 215,-52 209,-52"/>
-<text text-anchor="middle" x="185.5" y="-30.3" font-family="Times,serif" font-size="14.00">upb Array</text>
-</g>
-<!-- upb_msg&#45;&gt;upb_array -->
-<g id="edge1" class="edge">
-<title>upb_msg&#45;&gt;upb_array</title>
-<path fill="none" stroke="black" d="M105.21,-51.4C116.42,-48.94 128.49,-46.3 139.75,-43.82"/>
-<polygon fill="black" stroke="black" points="140.8,-47.18 149.81,-41.61 139.3,-40.34 140.8,-47.18"/>
-</g>
-<!-- upb_msg2 -->
-<g id="node3" class="node">
-<title>upb_msg2</title>
-<path fill="#7fc97f" stroke="black" d="M218,-106C218,-106 153,-106 153,-106 147,-106 141,-100 141,-94 141,-94 141,-82 141,-82 141,-76 147,-70 153,-70 153,-70 218,-70 218,-70 224,-70 230,-76 230,-82 230,-82 230,-94 230,-94 230,-100 224,-106 218,-106"/>
-<text text-anchor="middle" x="185.5" y="-84.3" font-family="Times,serif" font-size="14.00">upb Message</text>
-</g>
-<!-- upb_msg&#45;&gt;upb_msg2 -->
-<g id="edge2" class="edge">
-<title>upb_msg&#45;&gt;upb_msg2</title>
-<path fill="none" stroke="black" d="M105.21,-70.6C113.55,-72.43 122.36,-74.36 130.97,-76.25"/>
-<polygon fill="black" stroke="black" points="130.41,-79.71 140.93,-78.44 131.91,-72.87 130.41,-79.71"/>
-</g>
-</g>
-</svg>
diff --git a/docs/wrapping-upb/3.svg b/docs/wrapping-upb/3.svg
deleted file mode 100644
index 495504f..0000000
--- a/docs/wrapping-upb/3.svg
+++ /dev/null
@@ -1,65 +0,0 @@
-<?xml version="1.0" encoding="UTF-8" standalone="no"?>
-<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN"
- "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
-<!-- Generated by graphviz version 2.43.0 (0)
- -->
-<!-- Title: G Pages: 1 -->
-<svg width="409pt" height="153pt"
- viewBox="0.00 0.00 409.00 153.00" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
-<g id="graph0" class="graph" transform="scale(1 1) rotate(0) translate(4 149)">
-<title>G</title>
-<polygon fill="white" stroke="transparent" points="-4,4 -4,-149 405,-149 405,4 -4,4"/>
-<g id="clust1" class="cluster">
-<title>cluster_0</title>
-<path fill="gray" stroke="black" d="M20,-8C20,-8 246,-8 246,-8 252,-8 258,-14 258,-20 258,-20 258,-125 258,-125 258,-131 252,-137 246,-137 246,-137 20,-137 20,-137 14,-137 8,-131 8,-125 8,-125 8,-20 8,-20 8,-14 14,-8 20,-8"/>
-<text text-anchor="middle" x="133" y="-121.8" font-family="Times,serif" font-size="14.00">upb Arena 1</text>
-</g>
-<g id="clust2" class="cluster">
-<title>cluster_1</title>
-<path fill="gray" stroke="black" d="M290,-62C290,-62 381,-62 381,-62 387,-62 393,-68 393,-74 393,-74 393,-125 393,-125 393,-131 387,-137 381,-137 381,-137 290,-137 290,-137 284,-137 278,-131 278,-125 278,-125 278,-74 278,-74 278,-68 284,-62 290,-62"/>
-<text text-anchor="middle" x="335.5" y="-121.8" font-family="Times,serif" font-size="14.00">upb Arena 2</text>
-</g>
-<!-- upb_msg -->
-<g id="node1" class="node">
-<title>upb_msg</title>
-<path fill="#7fc97f" stroke="black" d="M103,-79C103,-79 28,-79 28,-79 22,-79 16,-73 16,-67 16,-67 16,-55 16,-55 16,-49 22,-43 28,-43 28,-43 103,-43 103,-43 109,-43 115,-49 115,-55 115,-55 115,-67 115,-67 115,-73 109,-79 103,-79"/>
-<text text-anchor="middle" x="65.5" y="-57.3" font-family="Times,serif" font-size="14.00">upb Message 1</text>
-</g>
-<!-- upb_array -->
-<g id="node2" class="node">
-<title>upb_array</title>
-<path fill="#7fc97f" stroke="black" d="M224,-52C224,-52 177,-52 177,-52 171,-52 165,-46 165,-40 165,-40 165,-28 165,-28 165,-22 171,-16 177,-16 177,-16 224,-16 224,-16 230,-16 236,-22 236,-28 236,-28 236,-40 236,-40 236,-46 230,-52 224,-52"/>
-<text text-anchor="middle" x="200.5" y="-30.3" font-family="Times,serif" font-size="14.00">upb Array</text>
-</g>
-<!-- upb_msg&#45;&gt;upb_array -->
-<g id="edge1" class="edge">
-<title>upb_msg&#45;&gt;upb_array</title>
-<path fill="none" stroke="black" d="M115.27,-51.1C128.26,-48.46 142.22,-45.63 154.96,-43.04"/>
-<polygon fill="black" stroke="black" points="155.78,-46.45 164.88,-41.03 154.39,-39.59 155.78,-46.45"/>
-</g>
-<!-- upb_msg2 -->
-<g id="node3" class="node">
-<title>upb_msg2</title>
-<path fill="#7fc97f" stroke="black" d="M238,-106C238,-106 163,-106 163,-106 157,-106 151,-100 151,-94 151,-94 151,-82 151,-82 151,-76 157,-70 163,-70 163,-70 238,-70 238,-70 244,-70 250,-76 250,-82 250,-82 250,-94 250,-94 250,-100 244,-106 238,-106"/>
-<text text-anchor="middle" x="200.5" y="-84.3" font-family="Times,serif" font-size="14.00">upb Message 2</text>
-</g>
-<!-- upb_msg&#45;&gt;upb_msg2 -->
-<g id="edge2" class="edge">
-<title>upb_msg&#45;&gt;upb_msg2</title>
-<path fill="none" stroke="black" d="M115.27,-70.9C123.58,-72.59 132.29,-74.36 140.83,-76.09"/>
-<polygon fill="black" stroke="black" points="140.24,-79.54 150.74,-78.1 141.63,-72.68 140.24,-79.54"/>
-</g>
-<!-- upb_msg3 -->
-<g id="node4" class="node">
-<title>upb_msg3</title>
-<path fill="#7fc97f" stroke="black" d="M373,-106C373,-106 298,-106 298,-106 292,-106 286,-100 286,-94 286,-94 286,-82 286,-82 286,-76 292,-70 298,-70 298,-70 373,-70 373,-70 379,-70 385,-76 385,-82 385,-82 385,-94 385,-94 385,-100 379,-106 373,-106"/>
-<text text-anchor="middle" x="335.5" y="-84.3" font-family="Times,serif" font-size="14.00">upb Message 3</text>
-</g>
-<!-- upb_msg2&#45;&gt;upb_msg3 -->
-<g id="edge3" class="edge">
-<title>upb_msg2&#45;&gt;upb_msg3</title>
-<path fill="none" stroke="black" d="M250.27,-88C258.49,-88 267.1,-88 275.55,-88"/>
-<polygon fill="black" stroke="black" points="275.74,-91.5 285.74,-88 275.74,-84.5 275.74,-91.5"/>
-</g>
-</g>
-</svg>
diff --git a/docs/wrapping-upb/4.svg b/docs/wrapping-upb/4.svg
deleted file mode 100644
index 2b5d2df..0000000
--- a/docs/wrapping-upb/4.svg
+++ /dev/null
@@ -1,138 +0,0 @@
-<?xml version="1.0" encoding="UTF-8" standalone="no"?>
-<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN"
- "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
-<!-- Generated by graphviz version 2.43.0 (0)
- -->
-<!-- Title: G Pages: 1 -->
-<svg width="417pt" height="303pt"
- viewBox="0.00 0.00 417.00 303.00" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
-<g id="graph0" class="graph" transform="scale(1 1) rotate(0) translate(4 299)">
-<title>G</title>
-<polygon fill="white" stroke="transparent" points="-4,4 -4,-299 413,-299 413,4 -4,4"/>
-<g id="clust1" class="cluster">
-<title>cluster_1</title>
-<path fill="gray" stroke="black" d="M29,-98C29,-98 380,-98 380,-98 386,-98 392,-104 392,-110 392,-110 392,-215 392,-215 392,-221 386,-227 380,-227 380,-227 29,-227 29,-227 23,-227 17,-221 17,-215 17,-215 17,-110 17,-110 17,-104 23,-98 29,-98"/>
-<text text-anchor="middle" x="204.5" y="-211.8" font-family="Times,serif" font-size="14.00">upb Arena</text>
-</g>
-<g id="clust2" class="cluster">
-<title>cluster_python</title>
-</g>
-<g id="clust6" class="cluster">
-<title>cluster_01</title>
-</g>
-<!-- upb_msg -->
-<g id="node1" class="node">
-<title>upb_msg</title>
-<path fill="#7fc97f" stroke="black" d="M102,-169C102,-169 37,-169 37,-169 31,-169 25,-163 25,-157 25,-157 25,-145 25,-145 25,-139 31,-133 37,-133 37,-133 102,-133 102,-133 108,-133 114,-139 114,-145 114,-145 114,-157 114,-157 114,-163 108,-169 102,-169"/>
-<text text-anchor="middle" x="69.5" y="-147.3" font-family="Times,serif" font-size="14.00">upb Message</text>
-</g>
-<!-- upb_array -->
-<g id="node2" class="node">
-<title>upb_array</title>
-<path fill="#7fc97f" stroke="black" d="M363,-142C363,-142 316,-142 316,-142 310,-142 304,-136 304,-130 304,-130 304,-118 304,-118 304,-112 310,-106 316,-106 316,-106 363,-106 363,-106 369,-106 375,-112 375,-118 375,-118 375,-130 375,-130 375,-136 369,-142 363,-142"/>
-<text text-anchor="middle" x="339.5" y="-120.3" font-family="Times,serif" font-size="14.00">upb Array</text>
-</g>
-<!-- upb_msg&#45;&gt;upb_array -->
-<g id="edge1" class="edge">
-<title>upb_msg&#45;&gt;upb_array</title>
-<path fill="none" stroke="black" stroke-dasharray="5,2" d="M114.33,-139.43C128.49,-136.14 144.32,-132.93 159,-131 204.59,-125.01 257.21,-123.6 293.64,-123.48"/>
-<polygon fill="black" stroke="black" points="293.93,-126.98 303.93,-123.48 293.93,-119.98 293.93,-126.98"/>
-</g>
-<!-- upb_msg2 -->
-<g id="node3" class="node">
-<title>upb_msg2</title>
-<path fill="#7fc97f" stroke="black" d="M372,-196C372,-196 307,-196 307,-196 301,-196 295,-190 295,-184 295,-184 295,-172 295,-172 295,-166 301,-160 307,-160 307,-160 372,-160 372,-160 378,-160 384,-166 384,-172 384,-172 384,-184 384,-184 384,-190 378,-196 372,-196"/>
-<text text-anchor="middle" x="339.5" y="-174.3" font-family="Times,serif" font-size="14.00">upb Message</text>
-</g>
-<!-- upb_msg&#45;&gt;upb_msg2 -->
-<g id="edge2" class="edge">
-<title>upb_msg&#45;&gt;upb_msg2</title>
-<path fill="none" stroke="black" stroke-dasharray="5,2" d="M108.38,-169.06C123.72,-175.44 141.85,-181.82 159,-185 200.72,-192.74 248.8,-190.27 284.7,-186.27"/>
-<polygon fill="black" stroke="black" points="285.44,-189.7 294.95,-185.04 284.61,-182.75 285.44,-189.7"/>
-</g>
-<!-- dummy -->
-<!-- dummy&#45;&gt;upb_array -->
-<!-- dummy&#45;&gt;upb_msg2 -->
-<!-- py_upb_msg -->
-<g id="node5" class="node">
-<title>py_upb_msg</title>
-<path fill="#beaed4" stroke="black" d="M111,-279C111,-279 28,-279 28,-279 22,-279 16,-273 16,-267 16,-267 16,-255 16,-255 16,-249 22,-243 28,-243 28,-243 111,-243 111,-243 117,-243 123,-249 123,-255 123,-255 123,-267 123,-267 123,-273 117,-279 111,-279"/>
-<text text-anchor="middle" x="69.5" y="-257.3" font-family="Times,serif" font-size="14.00">Python Message</text>
-</g>
-<!-- py_upb_msg&#45;&gt;upb_msg -->
-<g id="edge3" class="edge">
-<title>py_upb_msg&#45;&gt;upb_msg</title>
-<path fill="none" stroke="black" stroke-dasharray="5,2" d="M69.5,-242.68C69.5,-221.49 69.5,-200.3 69.5,-179.11"/>
-<polygon fill="black" stroke="black" points="73,-179.05 69.5,-169.05 66,-179.05 73,-179.05"/>
-</g>
-<!-- py_upb_arena -->
-<g id="node7" class="node">
-<title>py_upb_arena</title>
-<path fill="#beaed4" stroke="black" d="M238,-279C238,-279 171,-279 171,-279 165,-279 159,-273 159,-267 159,-267 159,-255 159,-255 159,-249 165,-243 171,-243 171,-243 238,-243 238,-243 244,-243 250,-249 250,-255 250,-255 250,-267 250,-267 250,-273 244,-279 238,-279"/>
-<text text-anchor="middle" x="204.5" y="-257.3" font-family="Times,serif" font-size="14.00">Python Arena</text>
-</g>
-<!-- py_upb_msg&#45;&gt;py_upb_arena -->
-<g id="edge6" class="edge">
-<title>py_upb_msg&#45;&gt;py_upb_arena</title>
-<path fill="none" stroke="#008b45" d="M123.07,-261C131.43,-261 140.1,-261 148.51,-261"/>
-<polygon fill="#008b45" stroke="#008b45" points="148.62,-264.5 158.62,-261 148.62,-257.5 148.62,-264.5"/>
-</g>
-<!-- py_upb_msg2 -->
-<g id="node6" class="node">
-<title>py_upb_msg2</title>
-<path fill="#beaed4" stroke="black" d="M381,-279C381,-279 298,-279 298,-279 292,-279 286,-273 286,-267 286,-267 286,-255 286,-255 286,-249 292,-243 298,-243 298,-243 381,-243 381,-243 387,-243 393,-249 393,-255 393,-255 393,-267 393,-267 393,-273 387,-279 381,-279"/>
-<text text-anchor="middle" x="339.5" y="-257.3" font-family="Times,serif" font-size="14.00">Python Message</text>
-</g>
-<!-- py_upb_msg2&#45;&gt;upb_msg2 -->
-<g id="edge4" class="edge">
-<title>py_upb_msg2&#45;&gt;upb_msg2</title>
-<path fill="none" stroke="black" stroke-dasharray="5,2" d="M339.5,-242.76C339.5,-230.63 339.5,-218.49 339.5,-206.35"/>
-<polygon fill="black" stroke="black" points="343,-206.16 339.5,-196.16 336,-206.16 343,-206.16"/>
-</g>
-<!-- py_upb_msg2&#45;&gt;py_upb_arena -->
-<g id="edge5" class="edge">
-<title>py_upb_msg2&#45;&gt;py_upb_arena</title>
-<path fill="none" stroke="#008b45" d="M285.91,-261C277.49,-261 268.77,-261 260.31,-261"/>
-<polygon fill="#008b45" stroke="#008b45" points="260.16,-257.5 250.16,-261 260.16,-264.5 260.16,-257.5"/>
-</g>
-<!-- py_upb_arena&#45;&gt;dummy -->
-<g id="edge7" class="edge">
-<title>py_upb_arena&#45;&gt;dummy</title>
-<path fill="none" stroke="red" d="M204.5,-242.76C204.5,-240.95 204.5,-239.15 204.5,-237.34"/>
-<polygon fill="red" stroke="red" points="208,-237 204.5,-227 201,-237 208,-237"/>
-</g>
-<!-- key -->
-<g id="node8" class="node">
-<title>key</title>
-<text text-anchor="start" x="72.5" y="-63.8" font-family="Times,serif" font-size="14.00">raw ptr</text>
-<text text-anchor="start" x="56.5" y="-44.8" font-family="Times,serif" font-size="14.00">unique ptr</text>
-<text text-anchor="start" x="26.5" y="-25.8" font-family="Times,serif" font-size="14.00">shared (GC) ptr</text>
-</g>
-<!-- key2 -->
-<g id="node9" class="node">
-<title>key2</title>
-<text text-anchor="start" x="202.5" y="-63.8" font-family="Times,serif" font-size="14.00"> </text>
-<text text-anchor="start" x="202.5" y="-44.8" font-family="Times,serif" font-size="14.00"> </text>
-<text text-anchor="start" x="202.5" y="-25.8" font-family="Times,serif" font-size="14.00"> </text>
-</g>
-<!-- key&#45;&gt;key2 -->
-<g id="edge10" class="edge">
-<title>key:e&#45;&gt;key2:w</title>
-<path fill="none" stroke="black" stroke-dasharray="5,2" d="M115.5,-68C149.19,-68 160.08,-68 189.31,-68"/>
-<polygon fill="black" stroke="black" points="189.5,-71.5 199.5,-68 189.5,-64.5 189.5,-71.5"/>
-</g>
-<!-- key&#45;&gt;key2 -->
-<g id="edge11" class="edge">
-<title>key:e&#45;&gt;key2:w</title>
-<path fill="none" stroke="red" d="M115.5,-48C149.19,-48 160.08,-48 189.31,-48"/>
-<polygon fill="red" stroke="red" points="189.5,-51.5 199.5,-48 189.5,-44.5 189.5,-51.5"/>
-</g>
-<!-- key&#45;&gt;key2 -->
-<g id="edge12" class="edge">
-<title>key:e&#45;&gt;key2:w</title>
-<path fill="none" stroke="#008b45" d="M115.5,-29C149.19,-29 160.08,-29 189.31,-29"/>
-<polygon fill="#008b45" stroke="#008b45" points="189.5,-32.5 199.5,-29 189.5,-25.5 189.5,-32.5"/>
-</g>
-<!-- key2&#45;&gt;upb_msg -->
-</g>
-</svg>
