Add walk.findNodeBefore
Fix node boundaries for unexpected regular expressions

Closes #33