Fix an edge case in HBase 0.96 one-shot scanners.
Fix an edge case in HBase 0.96 one-shot scanners.

This bug was introduced in b0113971: with HBase 0.95+ we have the
ability to start retrieving results in the same RPC as the one opening
the scanner.  However, if that RPC returns nothing because the scanner
didn't match any row in the first region, we invoked the callback with
an empty list of results in argument, which is not supposed to happen.

Factor out some code to properly handle scanners reaching the end of
their region, even if that happens during the first RPC.

angushe/asynchbase,manolama/asynchbase,nvoron23/asynchbase,mapr/asynchbase,yuzhu712/asynchbase,hhshuai/asynchbase,OpenTSDB/asynchbase,adityakishore/asynchbase,angushe/asynchbase,tsuna/asynchbase,manolama/asynchbase,mway08/asynchbase,OpenTSDB/asyncbigtable,adityakishore/asynchbase,Connexity/asynchbase,mway08/asynchbase,tsuna/asynchbase,OpenTSDB/asynchbase,tempbottle/asynchbase,SteamShon/asynchbase,hhshuai/asynchbase,yuzhu712/asynchbase,nvoron23/asynchbase,tempbottle/asynchbase,manolama/asyncbigtable,pythian/asynchbase,SteamShon/asynchbase,Connexity/asynchbase,mapr/asynchbase