Thank you very much for sorting out question type accessibility. That really needed doing, and I would not have had the time.
But ...
I wish I had beed added as a watcher to this bug before anything was changed 
The change has lots of bits of code like:
if ($answer->fraction == 1) {
if ($chosen) {
$a->class = 'correct';
$a->feedbackimg = '<img src="'.$CFG->pixpath.'/i/tick_green_big.gif" alt="'.get_string('correct', 'quiz').'" width="16" height="16" />';
} else {
$a->feedbackimg = '<img src="'.$CFG->pixpath.'/i/tick_green_small.gif" alt="'.get_string('correct', 'quiz').'" width="16" height="16" />';
}
} else if ($answer->fraction > 0 && $answer->fraction < 1) {
if ($chosen) {
$a->class = 'partiallycorrect';
$a->feedbackimg = '<img src="'.$CFG->pixpath.'/i/tick_amber_big.gif" alt="'.get_string('partiallycorrect', 'quiz').'" width="16" height="16" />';
} else {
$a->feedbackimg = '<img src="'.$CFG->pixpath.'/i/tick_amber_small.gif" alt="'.get_string('partiallycorrect', 'quiz').'" width="16" height="16" />';
}
} else {
if ($chosen) {
$a->class = 'incorrect';
$a->feedbackimg = '<img src="'.$CFG->pixpath.'/i/cross_red_big.gif" alt="'.get_string('incorrect', 'quiz').'" width="16" height="16" />';
} else {
$a->feedbackimg = '<img src="'.$CFG->pixpath.'/i/cross_red_small.gif" alt="'.get_string('incorrect', 'quiz').'" width="16" height="16" />';
}
}
There are a few problems with this:
1. It really sucks to have almost identical code copied between different question types. I would much prefer to have had some functions in questionlib.php like get_feedback_class($fraction), get_feedback_image($fraction), and so on that contain the necessary if statements and image HTML. This would be particularly valuable if, for example, you had an error in the logic of your if statements, or if you needed to change the image file names.
2. I think you do have an error in the logic of your if statements. Look at the if statement in the middle of print_question_grading_details() in question/type/questiontype.php. Notice the way it avoids doing exact comparisons of floating point numbers. We learned that that was necessary the hard way, when people reported bugs.
3. Your commit introduced some tabs, at least in shortanswer question type.
Screenshot of what sugges changes would look like.