OnDemandList: Skip check in removeRow when justCleanup is true

The check tests if all of the observer's rows have been removed before
canceling the observer, but under normal circumstances OnDemandList will
bulk-remove rows after calling removeRow with justCleanup set to true.
OnDemandList: Add another unit test and remove superfluous assertions

Made the queryRowOverlap non-zero to make sure that it does not affect
the cancelation of observers.