Improve DataFrame.to_string()
Add the following options:
- Draw borders: specify border characters and which ones to draw _(similar to [texttable](https://pypi.org/project/texttable/))_
  - Allow multi-line cells for long strings instead of truncation (they are visually separated by the borders)
- ~~Use [Markdown table format](https://help.github.com/en/articles/organizing-information-with-tables). This could also be implemented in a separate `to_markdown()` function.~~ _(Duplicate of #11052)_