Payload should implement
operator=(const Payload&) (or similar signature) to initialize / replace with contents from other payload
PayloadEntryProxy should implement
operator=(const Payload&) (or similar signature) -- Note: operator=(PayloadEntryProxy) for individual subtrees already exists