Update the student transfer management command

Updating the student transfer management command to take multiple courses as the "to" parameter. This will allow a single course enrollment to be split into enrollment across multiple 'micro' courses. This is for the following JIRA story:
https://openedx.atlassian.net/browse/ECOM-469

Refactored for cleanliness
Added a new test to verify transfer of enrollment and course modes effectively. 

@wedaly @dianakhuang @feanil  Please review if able

@brianhw I changed this to a TrackedCommand, is that enough for analytics tracking? 
To be honest I just moved this around from the original code. And this may just move a CeritifcateItem around too much if you're moving into multiple courses.