DataFrame.groupby(as_index=False).apply() ignores option and sets wrong indices
The following code starts from a 9 by 2 DataFrame with 3 groups, no index. When applying a function to each group that returns a 1 by 2 DataFrame, an index is introduced that doesn't seem to make sense, and the as_index=False option is ignored:

```
df = pd.DataFrame({
               'a' : [1,1,1,2,2,2,3,3,3],
               'b' : [1,2,3,4,5,6,7,8,9],
})

def f(x):
    if x.a[:1] == 2:
        # In the documentation there is nothing that indicates how one could
        # return an 'empty group', ie nothing, from a function suitable for an apply.
        # Is this solution adequate?
        return pd.DataFrame({})
    return pd.DataFrame({'mean' : [x.b.mean()], 'std' : [x.b.std()]})

grouped = df.groupby('a', as_index=False).apply(f)
grouped.index
MultiIndex
[(1, 0), (3, 0)]
```

In short: a MultiIndex is introduced, when ideally I would have expected no index at all, and in the worst case a non-hierarchical Index corresponding to the groups 1 and 3.
