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.
Do you need to define the `__lt__` or whatever the sort ones are? That is, does it ever make sense to sort these (I can't think of a reason to but asking for completeness).