Fix ServiceStateLogic integration tests

Fixes `brooklyn.rest.client.ApplicationResourceIntegrationTest`.

- Don’t modify the existing attribute value in `ServiceStateLogic`. Instead take a copy and modify that.
- Also fixes (and tidies) assertions in `brooklyn.rest.client.ApplicationResourceIntegrationTest`
- `BrooklynRestResourceUtils`: don’t propagate to the top-level app the service_up, service_not_up_indicators, etc. These are populated automatic by app.initEnrichers, which look at the child entities.
- Adds `EntityLocal.modifyAttribute(AttributeSensor, Function)` for atomic (sequential) updates to an attribute, where the new value is computed from the old value.
Worth saying implementations typically synchronize on the backing AttributeMap?

Or probably better, say:  "For details of the synchronization model used to achieve this, refer to the underlying attribute store (e.g. AttributeMap)."