Fix wrong output for notin self joins.

Closes #298. The implementation is somewhat ugly (we need to special-case self
joins in the notin code), but I didn't see a cleaner fix.

Note that evaluation of notin self joins is still a bit silly, because we send
the notin operator two copies of each input. That seems easy enough to fix, but
I'll leave that for later.