remove debugging print
extract a method to run the test-supplied callback

It looks at the callback's return value to decide whether to report success
or failure back to the keychain
assertions for each part of the message makes test failures easier to determine
Return something that evaluates as true

The keychain_daemon test fails unless this returns true.  We get double
messages in test_release_claim because 2 messages are sent back when we're
only expecting 1.  The first is a success message, and then a failure
immediately after.
better error reporting
test releasing a claim
test failure case for release_claim
test failure case for make_claim
switch die to croak