Using the database is straight forward, and a utility structure is passed into commands by default that
exposes predefined database requests based on interaction context.
You use the database by accessing the singleton instance of it.
The database stores models, which are structs that conform to DatabaseModel (it’s just Codable).
You can then use the database to store and retrieve data in the format of said models.
The transaction method is used to ensure that the data is not
modified by another command while it is being modified by this one.
If another thread tries to modify the same data while the transaction is in
progress, it will wait until the existing transaction is complete before modifying the data.
The reqs object is of type DatabaseBranches, which is a utility structure that
contains all the predefined database requests based on interaction context.