Cleanup some bad style in SocketMonitor.

Change-Id: I71ebfe4e92dc981a0066d63f9008a9fa8cef5078
Make ActiveJobs::markExpiredJobs easier to read.

The method previously was really complex and hard to understand, now
it should be easier to understand when a job is eligible to marked
as EXPIRED.

Change-Id: Id2c3be90b8d3d4bece9bfda7da81c4cfdfcd2f53
Simplify PollingMonitor by exposing a public way to fake polling.

Change-Id: I20c40e4966723d20160f38c14ae779e7d10a3738
Properly treat the heartbeats duration from workers to be in milliseconds.

We didn't properly convert the heartbeat into milliseconds so we caused
the expiration of workers to take roughly 1000 times longer than expected.

Change-Id: Iedde718b7ea943844d6e085b22b5ab0b16703c82
Merge pull request #50 from robertmaynard/message_router_duration_format

Handle all heartbeat durations as being in milliseconds