anchor.diff:   (entity-map* :pfx [:A/B :C/D]) ;; fetch all entities with keychain prefix (i.e. ancestor) [:A/B :C/D]
   ----
   
  -=== mutation
  +== [[mutation]] mutation
   
   [[app-listing]]
   [source,clojure]
  
positive.code: 
  TODO: support all datastore property types.
  
  === metadata
  
  === retrieval
  
  We treat the datastore as just another map: `(get datastore k)`
  retrieves the entity-map whose keychain is `k`.  Since there is only
  one datastore, we sugar this to `(get-ds k)`.
  
  ===# experimental:  co-construction
  
  [source,clojure]
  ----
  (entity-map* [:A/B]) ;; "co-constructs" (retrieves) entity with key [:A/B] if it exists, otherwise throws exception
  ----
  
  === queries
  
  **NB**: these query patterns are experimental and very likely to change.
  
  
negative.code: (= (ds/name e1) (ds/name e2) (ds/name e3))
  ----
  
  == [[kinds]] kinds
  
  In the datastore, every Entity has a "Kind", which is a string.  A
  Kind is effectively a tag that you attach to an Entity in order to
  