Introduce lambdas for mock assertions

This fixes the precedence problems that have popped up on my machine
since #38. I think it also makes the tests a bit more readable, but:

- it introduces duplication (the `#name` helper method is in about four
  different spec files)
- I worry we're muffling a signal that the API over-complex. If it were
  more straightforward, it would be easier to mock.

@tooky WDYT?