Improve i18n on shoppingcart

@dianakhuang, @sarina, can you two take a look at this?
Sometiems you have to include HTML in the translated strings, which is OK when you have to do it. I'm going to simplify a bit by breaking up the two sentences into two separately-translated strings, since they don't directly relate anyhow.
```python
ungettext(
    "You have successfully purchased <b>{number} course registration code</b> for {course_names}.",
    "You have successfully purchased <b>{number} course registration codes</b> for {course_names}.",
    total_registration_codes
).format(
    number=total_registration_codes,
    course_names=u"<b>{course_names}</b>".format(
        course_names=appended_course_names
    )
)
_("The following receipt has been emailed to {receipient_emails}").format(
    receipient_emails=u"<strong>{receipient_emails}</strong>".format(
      receipient_emails=appended_recipient_emails,
    )
)
```

making sure that the inner format strings are unicode, since the course names and recipient emails may contain unicode characters.