VALUE ADDS:

* implement COMMON MATCHERS for each of the call checks
    - matchers used for expectation matching
    - matchers used for return value deduction
    - document using these in the README
    - TODO
* good logging / assertion failure messages
    - TODO
* documentation
    - macros in rustdoc
    - const/non const methods
    - defining custom bodies, why we want to do that and the self.<method>.call() methods
    - definining type arguments




* check has calls -- ordered and unordered
    - DONE
* check exactly these calls -- ordered and unordered
    - DONE
* implement ACTIONS instead of just return values
    - DONE
    - done as return value, function and closure overrides
* multiple return values
    - DONE
* implement macros to generate mock boilerplate
    - DONE
