+ * Mask maps:
+ *
+ * A maskmap is a slightly efficient mapping from addresses to
+ * arbitrary data values. An address is a number of octets expressed
+ * as an hbytes. All the addresses covered by the same maskmap
+ * should have the same length (even though constructing the maskmap
+ * does not involve specifying that length).
+ *
+ * hbytes mask-map lookup MAP-VAR ADDRESS [DEFAULT] => DATA
+ * Error on missing default or if any prefix longer than ADDRESS.
+ *
+ * hbytes mask-map amend MAP-VAR PREFIX PREFIX-LENGTH DATA
+ * Sets all of the addresses in PREFIX/PREFIX-LENGTH to the
+ * relevant value.
+ *
+ * Representation:
+ * A maskmap MAP is [list [list PREFIX PREFIX-LENGTH DATA]].
+ * The list is sorted by ascending PREFIX and entries do not overlap.
+ * Each PREFIX in the map is truncated to the shortest number of
+ * pairs of hex digits which can represent it.
+ *