Allowing empty slice in multi-indices
This solves #8737 in the case where there is at least one boolean indexer. The patch of  #8739 does not allow the following:

``` python
import pandas as pd
import numpy as np
multi_index = pd.MultiIndex.from_product((['foo', 'bar', 'baz'], ['alpha', 'beta']))
df = pd.DataFrame(np.random.randn(5, 6), index=range(5), columns=multi_index)
df = df.sortlevel(0, axis=1)
df.loc[:, (['foo'], [])]
```

The Travis failure seems unrelated to this change. 
 pls add your example as a test (and put it after the 8737 test)
 Done. 
 don't worry about that failing test - sep issue

also pls add a release note in v0.15.2 (u can ref this issue)
 here it is
 can you sqush the commits? thanks.
 Rebased. 
 thank you for the fix!
