BUG: pivot_table always returns a DataFrame
- [x] closes #4386
- [x] tests added / passed
- [x] passes `git diff upstream/master | flake8 --diff`
- [x] whatsnew entry

Before this commit, if
- `values` is not list like
- `columns` is `None`
- `aggfunc` is not instance of `list`

`pivot_table` returns a `Series`.

This commit adds checking for `columns.nlevels` is
greater than 1 to prevent from casting `table` to
a `Series`.

This will fix #4386.

can you rebase / update?
 can you rebase and add a release note for 0.20.0
 Sorry to my late response, I rebased and add note for 0.20.0.
 can you rebase Rebased ! @yui-knk looks like some test failures: https://travis-ci.org/pandas-dev/pandas/jobs/186874138#L1939

Can you test those out locally and see if you reproduce? can you rebase. I think you have a failing test as well. can you rebase/update I think you need to change this test to return DataFrame rather than Series. otherwise looks ok: https://travis-ci.org/pandas-dev/pandas/jobs/208224356 also, I'd like to have a sub-section in the whatsnew which shows the case where this *used* to return a Series, but now returns a DataFrame (you can use one of your tests examples). thanks @yui-knk rebase and merged.