We should be able to differentiate the following users:*
Sequencer: Main entity we look at
Prover:
Where a Prover can be the same as the Sequencer, but could also be one of the 3rd party marketplaces (might eventually do simple models of different ones?), but might also be any other entity that enters auctions for Proving outside of marketplaces
Relay: Facilitates the auction between Sequencer and Prover. Only thing they do is receive rewards, so we could very simplistically hardcode one to three UUIDs that receive a share of the rewards for now?
L1 agents:
Probably not have as separate user, but instead just use some decision rule per timestep to decide
i) what the current gas/blob cost is and
ii) whether the L1 block is censored
Related to #37 #38 #39