Implement marquise_update_source()

This comes with the caveat that I'm not sure if the exact serialisation
format that's meant to be written to the 'contents' spool file. Is it:?
    key:value, ...
or
    key,value: ...