[stacks-signer] Verify the contents of a proposed Nakamoto Stacks Block
Description
Update stacks-signer to verify the contents of a Nakamoto Block
Context
Signers are responsible for ensuring that a nakamoto block is valid AND contains the stacks transactions they expect it to. This depends on state being added to stacks signers for storing the number of special cased 0 fee transactions that have been broadcast to the mempool (See https://github.com/stacks-network/sbtc/issues/381). This also depends on a stacks node endpoint for validating that a nakamoto block is well formed
Expected Approach
Add a function to validate a Nakamoto block. Verify it contains the expected 0 transaction fees (check against what is stored locally). Validate it is well formed via an endpoint call to the stacks node.
Acceptance Criteria
There exists a means to verify that a Nakamoto block should be signed or not.