The mod_quiz\structure class curretly stores a lot of data in in arrays of stdClass objects. Even with documentation, that is not so easy to understand.
Therefore, I think it is worth introducing a new class mod_quiz\local\structure\slot to store all the data for one slot in documented fields, and update the code to use it.
At the same time, consider whether mod_quiz\local\structure\slot_random is a useful class. (It seems to be only used in quiz_add_random_questions in locallib.php.)