JoinMatcher: change joining rule matching

Unfortunately, because of ProxyMatcher, there is no way to tell yet whether a
match is empty before the rule is actually evaluated; this will have to change,
of course.

But as a result we need to check _each time_ whether the joining rule has
matched empty...