Executor versioning [#3152]
- Closes #3152 (closed) and fixes #3153 (closed).
- Adds an executor version field to the system ledger.
- Adds a transaction that updates the executor version and is propagated out from the DN to the BVNs.
- Adds an executor version field to the global values, with the same mechanics as other globals.
- Updates the database to track how many times a value has been changed (in memory, not stored).
- Logs an error if multiple batches concurrently change the same value.
Changelog: feature
Edited by Ethan Reesor