Backport fastparquet 0.7 compat (PR #42954 and #42919)
- [ ] xref #42954 and #42919
- [ ] tests added / passed
- [ ] Ensure all linting tests pass, see [here](https://pandas.pydata.org/pandas-docs/dev/development/contributing.html#code-standards) for how to run them
- [ ] whatsnew entry

**This is a non-trivial backport. Please first review changed files before merging. Thanks**

What? How is CI picking up fastparquet 0.7.0. This needs more investigation... Anyone on the core team want to restart just the database builds? I just want to confirm that this is not flaky. Restarted, but it was indeed installing fastparquet 0.7.0 ... Ok figured it out. fastparquet decided to actually enforce numpy>1.18 in 0.7.1. Thanks! (and indeed, a follow-up PR for my comment is the easiest ;))