Made more useful errors for CSV upload

CSV upload was failing under the new error logging mechanism. Now this
returns a correctly formatted and more informative list of errors. It
also returns a list of students that weren't self-allocated if
self-assessment is disabled.