Trigger config-changed on address change

Trigger a `config-changed` event whenever a unit's addresses change. This is a step on the road to solving https://launchpad.net/bugs/1215579 (propagating address changes to relation settings).

There's a new uniter API method here, `WatchUnitAddresses`, which on the server-side simply defers to `state.Machine.WatchAddresses`. The uniter filter is updated slightly so that it starts watching address changes after the first `config-changed` event is received.
Hmm. I feel like we should start watching addresses, and handle the initial event, *before* sending a config-changed that'll represent both the initial addresses and the initial config. This order STM to guarantee a double-config-changed -- or, if we elide the second one, to leave us open to a race in which the address *does* change in between the initial c-c and the watcher start.

Am I making sense here?