Deletable more cautious about ContentGroup removal

* ContentGroup was always being referenced, even for Deletables without
  any .contentgroup_set attribute. This threw an exception when you
  deleted one of these objects (such as Announcements).  Now we'll be more
  defensive.
  (fixes #1749)
* Some cleanups to comments
Starting save button
Merge branch 'master' of https://github.com/Stanford-Online/class2go into jbau-save-button
log error when >1 incomplete exam record found (#1729)

Would be nice to know if this ever happens in production.
interactive autograder tests (fix #1726)
interactive ag test: bogus grader endpoint for jenkins (#1726)
Fixes #1543 -- Adds a "Save Answers" button + refactor + bugfixes

Bugfixes:
* Fixes #1764
* Fixes #1684

Refactors:
* get_or_create_incomplete_examrecord in exams/views.py
* Javascript function collectUserAnswers in view_exam.html
Button text save -> save answers
interactive autograder tests: get selenium working again (#1726)

Globally overriding urllib2 with our URL handler causes problems for
anything using urllib2 afterward.  Selenium gets bit by this, but could
have been anything.
Add error message if save fails
interactive test: add better docstring (#1726)
revert change to update_score, avoid conflict w/ jbau's refactoring (#1726)
Fixes #1765; csv grade export messed up

Re-written to conform to new tables.
removes print statments
Merge pull request #1768 from Stanford-Online/dca_new_working2

Fixes #1765; csv grade export messed up
Merge pull request #1750 from Stanford-Online/jrbl-1749-delete-announcement-throws-execption

Deletable more cautious about ContentGroup removal
Merge pull request #1766 from Stanford-Online/jbau-save-button

Jbau save button
assertEquals was what I wanted, not assertTrue (#1726)

per @jbau review.  I was mistakenly doing assertTrue, which made it not
much of a test at all.  by switching to assertEquals it turns out I
should just be treating the feedback as opaque, which is what I'm doing
now, both cleaner and easier to maintain.  It's never interpreted
anyway...
Merge branch 'master' of github.com:Stanford-Online/class2go into sef-1726-interactive-autograder-tests

Conflicts:
	main/courses/exams/views.py
add useful logline back into get_or_update_incomplete... (#1726)