Only walk var forms when the predicate passes

I think this is all we need to fix #12 - needed to update an existing test, but I think this is the right behavior.