BUG: sum(level=0) not returning decimal columns when dataframe contains columns with NumPy and decimal datatypes
``` python
import pandas as pd
import numpy as np
from decimal import *

def make_currency(x):
    try:
        return Decimal(x).quantize(Decimal('.01'))
    except (InvalidOperation, TypeError) as e:
        return Decimal(0).quantize(Decimal('.01'))

cols = {"c1": [1.23,2.34,3.45], "c2": [4,5,6], "c3": [1,2,3]}
index = [1, 1, 1]
df = pd.DataFrame(cols, index)
df['c1'] = df['c1'].apply(make_currency)
```

**Test Case 1**
Expected - _Return all 3 columns with sum aggregation applied_
Observations - _Passed_

```
In [2]: df.sum()
Out[2]:
c1     7.02
c2    15.00
c3     6.00
dtype: float64
```

**Test Case 2**
Expected - _Return all 3 columns with sum aggregation applied_
Observations - _Column 'c1' has not been returned by the sum function, which in this case is of Decimal datatype_

```
In [8]: df.sum(level=0)
Out[8]:
   c2  c3
1  15   6

In [10]: df.groupby(level=0).sum()
Out[10]:
   c2  c3
1  15   6
```

**Workaround**
Using numpy.sum in-conjunction with pandas.DataFrame.apply function appears to give the expected result one would expect from Test Case 2:

```
In [9]: df.groupby(level=0).apply(lambda x: np.sum(x))
Out[9]:
     c1  c2  c3
1  7.02  15   6
```
