Match against an arbitrary message. Intended for use with
handleMessage and
unwrapMessage, this function
only removes a message from the process mailbox,
if the
supplied condition matches. The success (or failure) of runtime type
checks deferred to
handleMessage and friends is irrelevant
here, i.e., if the condition evaluates to
True then the
message will be removed from the process mailbox and decoded, but that
does
not guarantee that an expression passed to
handleMessage will pass the runtime type checks and therefore
be evaluated.