anchor.diff:  
   The main testing macros are `specification`, `behavior`, and `assertions`:
   
  -```
  +[source]
  +----
  +(:require
  +  [untangled-spec.core :refer [specification behavior assertions])
  +
   (specification "A Thing"
  -   (behavior "does something"
  -      (assertions
  -         form => expected-form
  -         form2 => expected-form2
  -
  -         "optional sub behavior clause"
  -         form3 => expected-form3)))
  -```
  -
  -The specification macro just outputs a `(clojure|cljs).test/deftest`, so you are free to use `is`, `are`, `do-report`, etc.
  -
  -The `behavior` macro outputs additional events for the renderer to make an outline. As a note, `component` is just a macro alias of `behavior` it just can read better if what you are describing is not a behavior but a *component* of some greater thing.
  +  (behavior "does something"
  +    (assertions
  +      form => expected-form
  +      form2 => expected-form2
  +
  +      "optional sub behavior clause"
  +      form3 => expected-form3)))
  +----
  +
  +[TIP]
  +====
  +`specification` =outputs=> `(clojure|cljs).test/deftest`, +
  +`behavior` =outputs=> `(clojure|cljs).test/testing`.
  +
  +You are therefore free to use any functions from https://clojure.github.io/clojure/clojure.test-api.html[clojure.test] or https://github.com/clojure/clojurescript/wiki/Testing[cljs.test].
  +====
  +
  +The `behavior` macro outputs additional events for the browser and terminal renderer to make an outline with.
  +
  +[NOTE]
  +====
  +`component` is an alias of `behavior`. +
  +It can read better if you are describing a *component* footnote:[
  +    *Noun*: a part or element of a larger whole.
  +    *Adjective*: constituting part of a larger whole; constituent.
  +    ] and not a behavior footnote:[*Noun*: the way in which a natural phenomenon or a machine works or functions.].
  +====
   
   === Assertions
   
  
positive.code: 
  So, the following mock script:
  
  ```
  (when-mocking
     (f a) =1x=> a
     (f a) =2x=> (+ 1 a)
  
negative.code: 
  Note that you can schedule multiple things, and still return a value from the mock!
  
  [source]
  ----
  (:require
    [untangled-spec.core :refer [provided with-timeline async]])
  
  (with-timeline
    (when-mocking
       (f a) => (do (async 200 (g)) (async 300 (h)) true)))
  ----
  
  the above indicates that when `f` is called it will schedule `(g)` to run 200ms from \"now\" and `(h)` to run
  300ms from \"now\". Then `f` will return `true`.
  