Warn extension API users that underlying objects are read eagerly

Storing references to these APIs is risky because modifications via
the API instance may or may not be reflected in later getter calls,
depending on what part of the object was modified and how the
implementation works. Explicitly discourage this behavior, and change
all callers within Gerrit.

A later change may remove this recommendation after modifying all API
implementations, but that is an unknown amount of work, and there is
no harm in documenting the current behavior now.

Change-Id: I1921b619753b1d1cc60426704f68ff0318bf6fe5
8 files changed