Allow a more streaming interface to scans

This permits the NoSQL implementation to be informed when we abort
a scan early, because its scan routine can implement and receive the
close() method.  It also gives us a way to stream the JDBC results,
so we aren't creating a full result set in memory.

Change-Id: Iaf53a1803fe985e49236e10bde5d838846e0c8f0
Signed-off-by: Shawn O. Pearce <sop@google.com>
8 files changed