Fix issue where ScanFilterAndProject with PageSource might skip data

This can happen when processing the last page due to a broken check
in the isFinished() method. The implementation needs to check whether
there's a partial page pending processing before indicating the operator
is done.
Add a test for the record cursor also