ENH: Add optional argument keep_index to dataframe melt method
Setting keep_index to True will reuse the original DataFrame index +
names of melted columns as additional level. closes issue #17440

- [ ] closes #17440
- [ ] passes `git diff upstream/master -u -- "*.py" | flake8 --diff`

I appreciate any corrections, comments and/or help very much, as this is my first pull request on such a big project. Thank you.

