better job starting logic

buildCommit on the same PR checker does not start the same job/sha twice

a job is only sent to jenkins if this all holds:
 - we don't see a queue (queued jobs cannot be discovered through the api),
 - are in force-mode or didn't discover any matching jobs (sha/jobname)
 - haven't sent the job already in this actor's lifetime (actor is job/sha-specific)

this cycle keeps going for a while until we find the job or time out
formatting only
simplify build start logic: discover queued builds

the jenkins REST API is a piece of shit, but we
can now at least use its queue, which massively
simplifies the logic in the build start watcher

it's also a little more robust regarding kitten-reboots