Plug a file descriptor leak

Turns out we did not properly close our IndexReaders when the transaction contained relevant changes
and wrapped the lookup iterators (that are resources) in diff-applying iterators (that are not).

This fixes #1799
Merge pull request #2380 from chrisvest/2.0-file-descriptor-leak

2.0 file descriptor leak