jeff/feature-targeted-feedback

@nparlante 

Creating pull request for the "targeted feedback" feature on multiple choice questions.

This allows the author to have include targeted feedback for when students select an incorrect choice. Currently, the system only allows feedback blurbs that correspond to the correct answer. Targeted feedback will show up without the student needing to click the "Show Answer" button. There is also an option to change the explanation for the correct choice from a solution to targeted feedback. This essentially means that a student will see this automatically without clicking any buttons, and will also not see a green checkmark next to the correct answer until pressing the "Show Answer" button.

To try out, you set up a multiple choice problem with attribute `targeted-feedback` set to any value, or to always show the correct solution without the student needing to press a button or see the correct choice, set the value to `alwaysShowCorrectChoiceExplanation`. Then, you can provide targeted feedback by including a `<targetedfeedback>` element within a parent `<targetedfeedbackset>` element. The `explantion-id` attribute must match between the `<choice>` and the `<targetedfeedback>`.

Example XML:

```
<problem>
  <p>What is the correct answer?</p>
  <multiplechoiceresponse targeted-feedback="alwaysShowCorrectChoiceExplanation">
    <choicegroup type="MultipleChoice">
      <choice correct="false" explanation-id="feedback1">wrong-1</choice>
      <choice correct="false" explanation-id="feedback2">wrong-2</choice>
      <choice correct="true" explanation-id="feedbackC">correct-1</choice>
      <choice correct="false" explanation-id="feedback3">wrong-3</choice>
    </choicegroup>
  </multiplechoiceresponse>

  <targetedfeedbackset>
      <targetedfeedback explanation-id="feedback1">
      <div class="detailed-targeted-feedback">
          <p>Targeted Feedback</p>
          <p>This is the 1st WRONG solution</p>
      </div>
      </targetedfeedback>

      <targetedfeedback explanation-id="feedback2">
      <div class="detailed-targeted-feedback">
          <p>Targeted Feedback</p>
          <p>This is the 2nd WRONG solution</p>
      </div>
      </targetedfeedback>

      <targetedfeedback explanation-id="feedback3">
      <div class="detailed-targeted-feedback">
          <p>Targeted Feedback</p>
          <p>This is the 3rd WRONG solution</p>
      </div>
      </targetedfeedback>

      <targetedfeedback explanation-id="feedbackC">
      <div class="detailed-targeted-feedback-correct">
          <p>Targeted Feedback</p>
          <p>Feedback on your correct solution...</p>
      </div>
      </targetedfeedback>

  </targetedfeedbackset>

  <solution explanation-id="feedbackC">
  <div class="detailed-solution">
      <p>Explanation</p>
      <p>This is the solution explanation</p>
      <p>Not much to explain here, sorry!</p>
  </div>
  </solution>
</problem>
```