BUG: GH #12223, GH #15262. Allow ints for names in MultiIndex
 - [X] closes #12223 and #15262
 - [X] tests added / passed
  - `pandas/tests/frame/test_combine_concat.py::TestDataFrameConcatCommon::test_concat_numerical_names`
 - [X] passes ``git diff upstream/master | flake8 --diff``
 - [X] whatsnew entry

See discussion in #10461 .  Now if we internally know we need to call `get_level_values` for a specific level number, there is an internal function for doing that, which should allow better support for when people create indices with names that are integers.