Reformat student submissions reports

@jbau @jrbl @dcadams 

To use, go to instructor dashboard -> Data Download -> Reports section -> Get Student Submissions Report. This instructor facing functionality does not include students with no submissions; you have this option with the management command.

Also includes management command that can be called like follows:
./manage.py lms dump_student_submissions edX/DemoX/Demo_Course -o output.csv --all-students
Hey @kluo I still think something is wonky in `all_students` mode.  You're building up an in-memory list-of-lists, and then yielding individual lists from that in-memory structure.  There really isn't any memory savings.  Maybe
1) the all_students mode isn't necessary?  @jinpa want to weigh in?  how important is `all_student`, and how import is it for `all_students` to always be in the same sort order for each problem?
2) you can diff the students that have a module and the ones that don't (maybe just keep a `set` around), and yield those cases after.