DOC: rewrite DataFrame.set_index docstring
The docstring for DataFrame is a little confusing about the cases it supports. Explain the 3 cases:
1. specify a column to be used as new index labels
2. pass a like-length array of new index labels
3. pass a mixed list of either, each item becoming a levels of a MultiIndex.

and clarify the meaning of `append` in this context as adding new MultiIndex levels.