Fix timer jobs getting aborted from abandoning a change

NullChange returned equal for any change in the project, now
only returns equal for a NullChange (_id None) in the project.

Also added test case for the issue.

Change-Id: I4e43d1aa6cb040f775308f18333e090ff20e0dc0
Closes-Bug: 2000223
3 files changed