MDL-47494 gapselect: Split question_definition::init_first_step into start_attempt and apply_attempt_state.