Prevent multiple workers from picking up a router

Add locking logic to prevent multiple workers from picking up
a router. This replaces the old set-based check for routers
that were in the work queue.

Change-Id: Ifbb65dd675f3c55323bbc564a9d41a9f657d2e54
Fix log message argument

The 'tenant' variable is a module, not the id of a tenant.

Change-Id: Icee4124820498459950c3361a31743b4bb4ba66f
improve logging detail on router update failure

Include the attempt number in the failure message.

Change-Id: I0294d0bbff953207eee7ecf307806e0d933e1e0a
Merge pull request #105 from dhellmann/worker-locking

Worker locking