Accessory name cannot be updated
### Analysis

When modifying the name of an accessory in Homebridge UI, there is no way to update the name of the cached accessory in Homebridge.

There are two issues:
1. The method handleUpdatePlatformAccessories() is not properly implemented. A bug has been opened to handle this: [Updating Platform Accessories does nothing - method is not implemented](https://github.com/homebridge/homebridge/issues/3762)
2. The [PlatformAccessory](https://github.com/homebridge/homebridge/blob/latest/src/platformAccessory.ts#L42) class does not provide a method to update the details of the `_associatedHAPAccessory` object contained.

When a cached plugin is deserialized, the cached values are loaded into the "private" property `_associatedHAPAccessory`. Even if `displayName` is changed, the properties of `_associatedHAPAccessory` are never modified. When the plugin is serialized back to cache, it reads the properties of `_associatedHAPAccessory`.

The workaround would be to modify:
```
myPlugin._associatedHAPAccessory.displayName
```
However, the fact that `_associatedHAPAccessory` is marked as being a private property means that the implementation can change at any point with no notice and with no replacement.

### Expected Behavior

Adding an `updateDisplayName()` method to the [PlatformAccessory](https://github.com/homebridge/homebridge/blob/latest/src/platformAccessory.ts) class.

### Steps To Reproduce

N/A

### Logs

```markdown
N/A
```


### Configuration

```json
N/A
```


### Environment

N/A

### Process Supervisor

not applicable

### Additional Context

_No response_