describe on a groupby
I think expected result of this is with multiindex column...

```
df = pd.DataFrame({'PRICE': {pd.Timestamp('2011-01-06 10:59:05', tz=None): 24990,
  pd.Timestamp('2011-01-06 12:43:33', tz=None): 25499,
  pd.Timestamp('2011-01-06 12:54:09', tz=None): 25499},
 'VOLUME': {pd.Timestamp('2011-01-06 10:59:05', tz=None): 1500000000,
  pd.Timestamp('2011-01-06 12:43:33', tz=None): 5000000000,
  pd.Timestamp('2011-01-06 12:54:09', tz=None): 100000000}})


In [2]: g = df.groupby('PRICE')

In [3]: df.groupby('PRICE').describe()  # expected .unstack(1)
Out[3]: 
             PRICE        VOLUME
PRICE                           
24990 count      1  1.000000e+00
      mean   24990  1.500000e+09
      std      NaN           NaN
      min    24990  1.500000e+09
      25%    24990  1.500000e+09
      50%    24990  1.500000e+09
      75%    24990  1.500000e+09
      max    24990  1.500000e+09
25499 count      2  2.000000e+00
      mean   25499  2.550000e+09
      std        0  3.464823e+09
      min    25499  1.000000e+08
      25%    25499  1.325000e+09
      50%    25499  2.550000e+09
      75%    25499  3.775000e+09
      max    25499  5.000000e+09

```

cc #4740 @jreback 

I guess it just applies method/attribute from df:

```
In [4]: pd.DataFrame.foo = 1

In [5]: g.foo
Out[5]: 
PRICE
24990    1
25499    1
dtype: int64

In [6]: pd.DataFrame.bar = lambda x: 1

In [7]: g.bar()
Out[7]: 
PRICE
24990    1
25499    1
dtype: int64
```

should we just special case describe? :s
