Phase 1 of adding asset metadata saving to old Mongo

@dmitchell @cpennington Here's the first phase of my work. Look at the tests to see what is implemented and what isn't yet.
But can I get Mongo to sort a list embedded within a document (using a supplied sort)? I'd need to do that before slicing.