Add streaming index join support

Streaming index joins are activated as a last resort when index results cannot fit into the cache.
Implement `Closeable`