Split mongo assets cherry

Asset support in split
LMS-2876

Kind of, because really using in split requires the opaque url refactoring and CourseLocator.make_asset_key, this actually doesn't do anything with split, but it gets close.

@nasthagiri @cahrens @dianakhuang please review
One of the old quirks of modulestore (which I should probably change) is that only drafts have the `is_draft` property (and no xblock.location.revision every == `'draft'`) It's confusing and stupid.