BUG: Dont include deleted rows from sas7bdat files (#15963)
Sas7bdat files may contain rows which are actually deleted.
 
After reverse engineering the file format a bit, I found that   
if the page_type has bit 7 set, there is a bitmap following
the normal row data with a bit set for a given row if it has been
deleted. Use that information to not include deleted rows in
the resulting dataframe.

This PR is built on top of #22628

I've added two test-cases one from the issue  and another constructed
example, which tests parsing on different page types and across multiple sas7bdat-pages. 

The constructed example is rather large, mainly to have a test case where the data 
flows across several pages.

- [X] closes #15963
- [X] tests added / passed
- [X] passes `git diff upstream/master -u -- "*.py" | flake8 --diff`
- [X] whatsnew entry

