SetNested writes value at path, creating the intermediate maps it descends
through. It is the counterpart to GetNested, and errors when the path
descends through a value that is not a map. The converse is not guarded: a
write onto a final segment that holds a map replaces the map.