Refactor split migrator

LMS-2936

Removed a bunch of loc_mapper code
Cleaned up offering now being course and run in a few places
Removed extra db queries

Conflicts:
	common/lib/xmodule/xmodule/modulestore/tests/test_publish.py
As mentioned above, could possibly remove these 2 input parameters.  (Maybe after July 31st - if it's too much work at this time.)

All calls on `source_modulestore` in this file could be made on `mixed`, and they will be correctly routed.

All calls on `split_modulestore` would be redirected to split if the caller calls the migration code using the `with default_store` on `mixed`.  If you could do this, then this migration code would no longer need to be `split` specific.  It could work for any store - the only `split` specific methods currently used here are `get_course_index_info`, `update_course_index`, and `internal_clean_children`.  And they are all localized within the `_copy_published_modules_to_course` method - which if generalized, can be implemented by any store.