Expose API to update remotes' configurations

Introduce `ReplicationRemotesUpdater` class to add or update remotes
configuration programmatically.

To propagate changes to different configuration resources, both
`ConfigResource` and `ReplicationConfigOverrides` got new method `void
udpate(Config config)`. That lets persist changes in other configuration
resources.

In order to make Guice happy with all of the required bindings, some
were moved from `ReplicationModule` to `ReplicationConfigModule`.

Finally, the `ReplicationRemotesUpdater`, will use `SecureStore` to
persist `remote.$name.password` in a secure manner.

For end-to-end testing replication-remote-updates[1] can be used.

[1] https://github.com/dluksza/replication-remote-updates

Bug: Issue 322146238
Change-Id: I8003ec6c827f865eb383092db8f07033e92da488
10 files changed
tree: bfa63881e7fa490eb6595b63360e320b2df0cec9
  1. .settings/
  2. src/
  3. .gitignore
  4. .mailmap
  5. BUILD
  6. LICENSE