Handle builds without gearman jobs

Zuul creates fake Build objects for jobs that it skips due to
merge conflicts and other such situations.  If Zuul decides to
cancel such a build, we should handle it gracefully instead of
throwing an exception.

Also log received gearman job handles to better correlate builds
with gearman debug logs.

Change-Id: I1cd14c8249ac4c68e797430b2b4941f2eeee2acf