WL-98 As a course instructor, auto-register (as well as auto enroll) a list of students into my course

@chrisndodge here are the changes related to WL-98 for your quick reivew. 
we have written the test cases but only one coverage is missing in our code.  
currently we did not check/test the code for quality.

In order to test this feature you need to set the flag: 
FEATURES['ALLOW_AUTOMATED_SIGNEDUPS'] = True
I think it's good form to call `close()` on a file handler, but in this case, it may not be necessary. Calling `close()` on a file indicates to the operating system that your program is done reading the file from disk, but with file uploads, you're not reading a file from the disk, you're reading a stream of bytes from the network. Even if it doesn't do anything, though, you should still call `close()` on the file handler when you're done with it, to indicate to other developers reading the code that no further code will be using this file handler.