* Added Block Rewards
* added new type
* added enum
* Fix phase0 block reward in rewards API (#4929)
* Merge 'guav00a/proposer-rewards-api'
* Merge unstable
* Revamp phase0 reward API tests
- Add test_rewards_base_slashings (testing #5101)
- Improve fix to not include proposer reward in attestation reward API calculation (#4856)
- Adjust test approach for phase0 tests: Pad with empty epochs to include all rewards in calculation
- Simplify and unify code across all reward tests
* Merge branch 'unstable' into fix-4929
* Merge branch 'unstable' into fix-4929
* Merge remote-tracking branch 'origin/unstable' into fix-4929
* Fix merge fallout
* Remove junk revived in merge
* Address review
- check for attestations with lower inclusion delay
- check for double attestations in block
- add test
* Merge branch 'unstable' into fix-4929
* Merge branch 'unstable' into fix-4929
## Issue Addressed
#3708
## Proposed Changes
- Add `is_finalized_block` method to `BeaconChain` in `beacon_node/beacon_chain/src/beacon_chain.rs`.
- Add `is_finalized_state` method to `BeaconChain` in `beacon_node/beacon_chain/src/beacon_chain.rs`.
- Add `fork_and_execution_optimistic_and_finalized` in `beacon_node/http_api/src/state_id.rs`.
- Add `ExecutionOptimisticFinalizedForkVersionedResponse` type in `consensus/types/src/fork_versioned_response.rs`.
- Add `execution_optimistic_finalized_fork_versioned_response`function in `beacon_node/http_api/src/version.rs`.
- Add `ExecutionOptimisticFinalizedResponse` type in `common/eth2/src/types.rs`.
- Add `add_execution_optimistic_finalized` method in `common/eth2/src/types.rs`.
- Update API response methods to include finalized.
- Remove `execution_optimistic_fork_versioned_response`
Co-authored-by: Michael Sproul <michael@sigmaprime.io>