Only walk var forms when the predicate passes

fixes #12
Merge pull request #14 from trptcolin/var-walking-predicate

Only walk var forms when the predicate passes