Use Doublespeak for delegate_method matcher

This fixes #501.

----

Use our Doublespeak mini-library to stub the target method on the object
in question, ensuring that the stubs we create during matching get
reversed when the match ends.

Also:

* Make it possible to negate the matcher, and use negation in tests
   rather than !matches?
* If the matcher fails, add more information to the failure message as
  to what was actually called on the target object