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.
I think it would be worth moving these tests into their own `TestSuite` class, either deriving from the existing class, or with their own `setUp`, just to make it more clear that they're all related.