Refactored survey add_question.

Moved input validation from javascript into the Question model. Better
Response persistence when user encounters an error while trying to save
the question.

The multiple Response section was built based on Add/Edit Event's
penalty section. It's actually better than the penalty setup as it fixes
a few bugs, it'll have to be applied to penalty later.

Left the controller code as is, but they could use some clean up too.
Though it looks a lot more complicated to clean that up.