[refactor] return MempoolAcceptResult
Summary:
This creates a cleaner interface with ATMP, allows us to make results const,
and makes accessing values that don't make sense (e.g. fee when tx is
invalid) an error.
This is a backport of core#21062 [2/4]
https://github.com/bitcoin/bitcoin/pull/21062/commits/f82baf0762f60c2ca5ffc339b095f9271d7c2f33
Note: changes related to RBF are not applicable
Depends on D11778
Test Plan: ninja all check-all bitcoin-bench
Reviewers: #bitcoin_abc, Fabien
Reviewed By: #bitcoin_abc, Fabien
Subscribers: Fabien
Differential Revision: https://reviews.bitcoinabc.org/D11779