sending template pdf with certificate request
fixing some typos
CSV Reporting of Shopping Cart Purchases, with tests

squashing to one commit to make cherry-picking by feature possible
Fix bug in grabbing course enrollments.

LMS-1475
If student has not passed verification, issue an honor code cert.

Also, display a message on their dashboard.
Use class methods to find the enrollment mode.
Update open-ended tests to load the module between 'requests'

Under normal operation, XModules are reloaded on each request from a
student. CombinedOpenEnded modules have code that runs at initialization
that validates the students state. These changes makes that code run
during several long-form unit tests (testing CombinedOpenEnded across
multiple 'requests').

These tests are marked as expectedFailure because they now exhibit the
same failures as observed in [LMS-1493] (namely, the students state gets
reset, because CombinedOpenEnded interprets system.ajax_url raising an
error as meaning that the problem definition and the student answers are
in conflict)
Move xmodule_runtime.xmodule_instance registration earlier

This allows XModules (specifically CombinedOpenEnded) to use ajax_url
during their init functions (which would, before, have thrown an
exception).

[LMS-1493]
Merge pull request #1726 from cpennington/hotfix-fix-OEE-ajax-url

Fix LMS-1493
Pass through the certificate mode correctly.
Allow colons in Locator fields.
Merge pull request #1742 from edx/ned/cherry-pick-pr-1740

Ned/cherry pick pr 1740
Update course_navigation.html

The tab names are not being translated
Grade report celery task and direct file push to S3 from the new instructor dashboard.

Hook up display of grade files ready for download to new instructor dashboard.

LMS-58
UX for Data Download tab on instructor dash

Restrict grade report generation to 'is_superuser' users (can be overridden with
feature flag ALLOW_COURSE_STAFF_GRADE_DOWNLOADS); all staff users can download
generated files.

LMS-58
Fix error case  where we have items in our grading csv output
that are not present in a given student's gradeset.

General code cleanup and addition of comments.

Instructor dashboard API unit tests.

LMS-58
Make ENABLE_S3_GRADE_DOWNLOADS disabled by default, enabled in dev.

Having ENABLE_S3_GRADE_DOWNLOADS enabled by default in common.py
could lead to surprising behavior for folks downstream. They'd
suddenly see a grade download screen on their new instructor
dashboard, but the links by default would be local files and
couldn't be used in an actual production environment. So we disable
by default and let people explicitly enable it and set it up for
S3 if they wish.

LMS-58
Add error recovery to inline discussion loading

Now the interface will reset apropriately and allow a user to retry
expanding the discussion or loading a new page, and the alert message
will ask the user to retry.

JIRA: FOR-300, FOR-301
Use Choices to track possible modes.
Fix typo in comment.