anchor.diff:  Very much a work in progress.  Works well enough to have some fun
   playing around.  Not packaged on clojars, to experiment, clone the
   repo and run the tests.  Some recent documentation is at
  -[Entities](doc/Entities.md), [Keychains](doc/Keychains.md), and
  -[Datastore](doc/Datastore.md).  Lots of simple
  -[tests](test/clojure/migae) that demonstrate the semantics.
  +link:doc/Entities.md[Entities], link:doc/Keychains.md[Keychains] and
  +link:doc/Datastore.md[Datastore].  Lots of simple
  +link:test/clojure/migae[tests] that demonstrate the semantics.
   
   At this point, until I can get more complete documentation organized,
   you'll probably want to at least review Google's official
  -[Datastore documentation](https://cloud.google.com/appengine/docs/java/datastore/).
  +link:https://cloud.google.com/appengine/docs/java/datastore/[Datastore documentation].
   
   == getting started
   
  
positive.code: ### field types
  
  The value part of an entity-map is just a map.  The datastore
  restricts the permissible value types; see  [Properties and value types](https://cloud.google.com/appengine/docs/java/datastore/entities#Java_Properties_and_value_types)
  
  ```
  (entity-map [:Foo/Bar] {:a 1})  ;; java.lang.Long
  
negative.code: {:a 1}
  user=> (ds/entity-map* k m)   ;; pull constructor - retrieves matches from datastore
  {:a 1}
  ----
  
  You will sometimes get `NullPointerException No API environment is
  registered for this thread.` (the test env seems to timeout); if so,
  