controller id needs to be included in __eq__ and __hash__ of
PendingStateChanges to avoid ambiguity