9.5.x maintenance: Build against NumPy 2.0 by default
Two main changes:
- Update NumPy C API usage for 1.x and 2.0 compatibility. Cherry-picked changes from !680 (merged).
- Build against NumPy 2.0, so that we are ABI compatible with both 1.x and 2.x. Still testing against NumPy 1.x.
Limit NumPy to <3, to avoid the similar problems in future. As per NumPy recommendation.
The minimum NumPy version is increased to 1.19.3, since that is the oldest version recommended on the oldest Python version we support: 3.9.
Remove specific versions from README to reduce maintenance.