anchor.diff:  ``RepositoryService``'s API too because instantiating and persisting objects are often done together.
   <2> test whether a particular domain object is persistent or not
   <3> persist (ie save) an object to the persistent object store (or do nothing if it is already persistent).
  -<4> persistAndFlush (ie save and flush) same as "persist()", but also flushes changes to database and updates managed properties and collections (i.e., 1-1, 1-n, m-n relationships automatically maintained by the Persistence Mechanism - such as DataNucleus -).
  +<4> (`1.13.0-SNAPSHOT`) persist (ie save) and flush; same as `persist()`, but also flushes changes to database and updates managed properties and collections (i.e., 1-1, 1-n, m-n relationships automatically maintained by the DataNucleus persistence mechanism).
   <5> remove (ie delete) an object from the persistent object store (or do nothing if it has already been deleted).
  -<6> remove (ie delete and flush) same as "remove()", but also flushes changes to database and updates managed properties and collections (i.e., 1-1, 1-n, m-n relationships automatically maintained by the Persistence Mechanism - such as DataNucleus -). 
  +<6> (`1.13.0-SNAPSHOT`) remove (delete) and flush;  same as `remove()`, but also flushes changes to database and updates managed properties and collections (i.e., 1-1, 1-n, m-n relationships automatically maintained by the DataNucleus persistence mechanism).
   <7> return all persisted instances of specified type.  Mostly for prototyping, though can be useful to obtain all instances of domain entities if the number is known to be small.  The optional varargs parameters are for paging control; more on this below.
   <8> all persistence instances matching the specified `Query`.  Query itself is an Isis abstraction on top of JDO/DataNucleus' Query API.  *This is the primary API used for querying*
   <9> As the previous, but with client-side filtering using a `Predicate`.  Only really intended for prototyping.
  
positive.code: [source,java]
  ----
  public interface RepositoryService {
  
      <T> T instantiate(final Class<T> ofType);                                               // <1>
  
      boolean isPersistent(Object domainObject);                                              // <2>
      void persist(Object domainObject);                                                      // <3>
      void persistAndFlush(Object domainObject);                                              // <4>
      void remove(Object persistentDomainObject);                                             // <5>
      void removeAndFlush(Object persistentDomainObject);                                     // <6>
  
  
negative.code: 
      <T> T firstMatch(Query<T> query);                                                       // <12>
      <T> T firstMatch(final Class<T> ofType, final Predicate<T> predicate);                  // <13>
  }
  ----
  <1> create a new non-persisted domain entity.  This is identical to
  