API/BUG Raise ValueError when stacking nonunique levels

Should raise a ValueError when (un)stacking a DataFrame
on a nonunique level. Previous behavior was to raise
a KeyError (not deliberately). Closes #6729.
Merge pull request #6849 from TomAugspurger/unstack-nonunique

API/BUG Raise ValueError when stacking nonunique levels
API: make Series.sort/order arguments in the same order
     drop unused Series.sort order argument
     added Series.sort na_position argument to conform with Series.order
     Series.order default kind is not 'quicksort' to conform with Series.sort
     (and others), (GH6847)