### Description
- Fixes#3396
- See v2 backport here #3463
So turns out this is because:
- BSC nodes tend to enforce a minimum gas price of 3 gwei when you
submit a tx
- it's possible for validators to include privileged txs at a lower gas
price, so in practice (probably some mev stuff ?) there are a bunch of
txs in blocks with transactions lower than 3 gwei
- BSC's 1559 situation is they have a base fee of zero, so it's
basically like they just use legacy txs
- when we try to figure out what to pay in prio fees, we are suggested a
1 gwei priority fee:
```
$ cast rpc eth_feeHistory 10 latest "[5.0]" --rpc-url https://rpc.ankr.com/bsc
{"oldestBlock":"0x23706f7","reward":[["0x3b9aca00"]],"baseFeePerGas":["0x0","0x0"],"gasUsedRatio":[0.1149265]}
$ cast td 0x3b9aca00
1000000000
```
So options are:
1. tx overrides for bsc, set it to 3 gwei
2. use a different eip 1559 estimator and set the percentile used in
eth_feeHistory to something higher. Atm the percentile is 5%, if you
change this to 50% we seem to get 3 gwei. This would have consequences
for other chains tho
3. another heuristic, to fall back to legacy txs (where we can trust the
eth_gasPrice to give us an accurate price) whenever the base fee is 0
I'm a tx override hater and we don't have this in the agents so far so
I'm gonna go with 3. It's the least intrusive change
/// Pretty much a copy of the logic in ethers-rs (https://github.com/hyperlane-xyz/ethers-rs/blob/c9ced035628da59376c369be035facda1648577a/ethers-providers/src/provider.rs#L478)
/// but returns the base fee as well as the max fee and max priority fee.
/// Gets a heuristic recommendation of max fee per gas and max priority fee per gas for