Add setup blocks to all levels and add cache to class level

(same as before hooks but usable on class level)
Add body expectation (for non-json responses)