Update zuul-gearman protocol.

* Use name+number as the build identifier for all meta-jobs.
  (Zuul has name + number as build metadata, so avoid adding new/duplicate
  features).
* Refer to the name of the manager worker as 'manager' instead of 'master'
  to avoid jenkins specifics.
* Just call the url "url" instead of "full_url".
* Change SetDescriptionWorker to use name+number as the build id.
  Also, expect 'html_description' instead of 'description'.
* Don't catch as many exceptions, instead, let them propogate so that they
  get turned into WORK_EXCEPTION packets with information (instead of
  WORK_FAIL packets which have no info).
* Change StopJobWorker to use the same name+number interface as
  setDescriptionWorker (for consistency, expandability, plus it makes
  the code simpler).

Change-Id: I8e078540c252bf9c1f14b79f8182517cbaa13555
Handle not connecting at start.

We previously assumed that we would connect to gearman immediately and be able
to send a SET_CLIENT_ID packet; that would raise an exception and stop any
further gearman processing.  Instead, don't assume we can send that packet,
and also, do send it immediately after reconnecting.

Also, lower the retry delay from 3 second to 2.  I don't think we'll mind
Jenkins being in a tighter loop because it probably won't be doing anything else.

Change-Id: Id585726e23076ad22e2935173995db2bdadf9974