Possibly a stupid question, but why extend CreateDefNodes and add to it, instead of making a pass just for eval? Is the thinking that we'll want to also re-implement the basics of `@def` to support `value()`, etc, and that should be done in the same place?