ENH: Create directories when missing in to_* methods
This is the most fundamental approach to creating new folders when a user specifies a path that is missing in file creation methods like `to_csv`, `to_excel`, `to_feather` etc. We can do this in [io/common.py:`get_handle()`](https://github.com/pandas-dev/pandas/blob/50a59bac1f2bcbf9ac87c7a4160d4355be512294/pandas/io/common.py#L521) conditionally when the file buffer provided is in a writable mode.

- [x] closes #24306
   - Can use the existing #42250 to extend documentation for each of the `to_*` methods (@Joeperdefloep)
- [x] tests added / passed
- [x] 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
