Bug Hunt: object.and is supposed to be all-or-nothing

If all of the keys are missing, the `and` rule should pass.  This avoids having to do `.with('a', 'b').with('b', 'a')`.