anchor.diff:      create: unit -> IDbConnection
       dispose: IDbConnection -> unit
       tx: IDbTransaction option
  -}
  +    setupCommand: IDbCommand -> unit
  +} with 
  +    static member make(create, dispose, ?tx, ?setupCommand) =
  +        { create = create
  +          dispose = dispose
  +          tx = tx
  +          setupCommand = defaultArg setupCommand ignore }
   
   /// Creates a <see cref="ConnectionManager"/> with an externally-owned connection
   let withConnection (conn: IDbConnection) : ConnectionManager =
  
positive.code:         logf "creating connection from const %s" id
          conn
      let dispose c = logf "disposing connection (but not really) %s" id
      { create = create; dispose = dispose; tx = None }
  
  /// Creates a <see cref="ConnectionManager"/> with an externally-owned transaction
  let withTransaction (tx: IDbTransaction): ConnectionManager =
  
negative.code:         logf "creating connection from const %s" id
          tx.Connection
      let dispose c = logf "disposing connection (but not really) %s" id
      ConnectionManager.make(create, dispose, tx)
  
  /// Creates a <see cref="ConnectionManager"/> with an owned connection
  let withNewConnection (create: unit -> IDbConnection) : ConnectionManager = 
  