MDL-46547 gradebook: Moving gradebook csv import into a class.

This allows plugins such as drag and drop to use / extend the class
and saves on duplicating code.
MDL-46547 gradebook: Unit tests for the new class for importing csv files.
MDL-46547 gradebook: grade import plugin for drag and drop.

This allows information to be dragged and dropped directly into a
form to be imported into the gradebook.