BUG: fix pivot_table with multiple aggregations per column and margins=True #12210
Fix handling of list of functions per column:
    - in pivot_table (checking) column name conflict
    - in _compute_grand_margin

This case is still failing: if also specify columns='C', then there's another exception in
_generate_marginal_results.

 - [X] closes #12210
 - [X] tests added / passed
 - [ ] passes ``git diff upstream/master --name-only -- '*.py' | flake8 --diff``
 - [ ] whatsnew entry

Hey, someone should look at this test case - it seems unstable even with check_less_precise=True (3 decimal precision).

 def test_sum(self):
        self._check_stat_op('sum', np.sum, has_numeric_only=True)
    
        # mixed types (with upcasting happening)
        self._check_stat_op('sum', np.sum,
                            frame=self.mixed_float.astype('float32'),
                            has_numeric_only=True, check_dtype=False,
>                           check_less_precise=True)
pandas\tests\frame\test_analytics.py:445: 
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
pandas\tests\frame\test_analytics.py:752: in _check_stat_op
    check_less_precise=check_less_precise)
pandas\util\testing.py:1282: in assert_series_equal
    obj='{0}'.format(obj))
pandas\_libs\testing.pyx:59: in pandas._libs.testing.assert_almost_equal (pandas\_libs\testing.c:4156)
    cpdef assert_almost_equal(a, b,
pandas\_libs\testing.pyx:173: in pandas._libs.testing.assert_almost_equal (pandas\_libs\testing.c:3274)
    raise_assert_detail(obj, msg, lobj, robj)
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
obj = 'Series', message = 'Series values are different (25.0 %)'
left = '[-0.680764, -5.29974, 2.98315, 0.000124574]'
right = '[-0.680764257908, -5.29973983765, 2.98315429688, 0.000125050544739]'
diff = None Also the two failures from CircleCI are due to a deprecated warning (using - operator on boolean arrays)...