Improve button handling

Ensure next negative response is always different from previous; hide negative button if there's only one option (i.e. C)

(BTW, sorry if this change is a little messy, what with a couple of crappy commits - if that's a problem, I'll make sure to avoid that in future! Hoping it will merge cleanly, though)