Refactor ChangeMessage to include PatchSet.Id

Requires a PatchSet.Id to be included when instantiating ChangeMessage.
PatchSet.Id can be null if necessary, for instance in the
case of MergeOp messages.

Change-Id: I2d6d980d986f72a5aed2de6443632a47e6238215
5 files changed