Instead of having callers set the fees, effective values, and filtering
of outputs, do these within OutputGroups themselves as member functions.
m_fee and m_long_term_fee is added to OutputGroup to track the fees of
the OutputGroup.
This is a backport of core#17458 [2/2]
https://github.com/bitcoin/bitcoin/pull/17458/commits/9adc2f80fc14f11ee2b1f989ee7be71b58481e6f#