Actually handle errors loading an exercise file

$.get() doesn't call the success() function if the get doesn't succede. Maybe it did once upon a time? Anyway, handle failures to get the exercise html file correctly. Also, in that situation the user will probably want to report a problem. Thing is, `exercise` is undefined so reporting a problem would fail. This now checks for that too.

Test plan: Delete webapp/khan-exercises/addition_1.html; Try to do an addition_1 task. Note the Khan.error-logged message. Attempt to submit an issue. The issue is successfully submitted (with the helpful "undefined" answer timeline).

Auditors: alpert