REF: `DataFrame.to_latex` directs to `Styler.to_latex`
Closes #41649.
A lot of the audit trail for the features to get this to work are documented in the issue. 

## For Reviewers

These are the key changes to note in **DataFrame.to_latex tests**

- The expected output remains as close as possible to the original, altering the arg input in `to_latex` to demonstrate the new combinations needed.
- No tests have been removed, and all pass with often minor alterations to the test formatting .
- `hrules=True` is added to all tests to get `\toprule \midrule \bottomrule`. This is a new option and the default in Styler is not to have these.
- `\cline` (for multirow) has gone. This feature is not implemented in Styler.
- `col_space` is gone, meaning there is not a nice console alignment of text. Of course the LaTeX rendering is unaffected by this, and when styling LaTeX commands are added this needs to be removed anyway.
- There are some nice new features added here, but all currently exists from Styler anyway, and that is where testing resides.

## Follow-Ups

- [ ] Make jinja2 a **hard dependency** (#43423) (this PR actually contains the jinja2 PR to help with tests passing)
- [ ] Deprecate all `pandas.options.display.latex` documenting the replacement `styler.latex` options instead.
- [ ] Remove all redundant code for python LatexFormatter.
- [ ] Reimplement cline? Im not a huge fan of this and I think it (maybe?) quite complicated to implement

## Revised Docs

![Screen Shot 2021-09-06 at 23 50 02](https://user-images.githubusercontent.com/24256554/132262289-da75546f-9aca-4938-b32b-12eb84377b25.png)
![Screen Shot 2021-09-06 at 23 50 20](https://user-images.githubusercontent.com/24256554/132262291-eca0003a-ca69-4079-8023-88c489d84034.png)
![Screen Shot 2021-09-06 at 23 50 32](https://user-images.githubusercontent.com/24256554/132262293-89d724d2-673b-4770-9924-0a7269b82b9e.png)
![Screen Shot 2021-09-06 at 23 50 44](https://user-images.githubusercontent.com/24256554/132262294-0e03da0d-5fbb-4101-90d5-5728fe1dfeb6.png)
