Overwrite by key

This seems like a generally useful merge strategy. Allows you to handle lists slightly more carefully.