DataFrame.from_items clean-up

- Improve docstrings and error messages
- Convert final `elif` to `else`
DOC: Fix syntax so bug listing renders properly
DOC: improving docstring for swaplevel method #2648
Merge pull request #2757 from dandavison/dataframe_from_items_cleanup

DOC: DataFrame.from_items clean-up