ENH: pd.unstack(level, values=["a", "b", "c"])
#### Is your feature request related to a problem?

I would like to unstack only certain values from a DataFrame to know exactly which columns will be in the resulting dataframe.
For example, when the dataframe is empty, `df.unstack(0)` will just return an empty dataframe without columns:
https://github.com/pandas-dev/pandas/issues/21255

Advantages:
- predictable column layout
- subsetting for certain values

#### Describe the solution you'd like

I'd propose a values option for `pd.DataFrame.unstack()` that lets one specify which values will be unstacked into columns.
E.g. `df.unstack(0, values=["A", "B", "C"])` would ensure that the resulting dataframe has exactly the toplevel columns `A`, `B` and `C`.

#### API breaking implications

N/A

#### Describe alternatives you've considered

I checked out `pd.DataFrame.pivot()`, however, it is more complicated to use and cannot use index levels for unstacking.

