Add an init with parameters to QueueMonitorJob, so that jobName,
queueLengthWhenAdded, and queue are all readonly.
Remove the assert from observeValueForKeyPath.

There's a corner-case during teardown where it can be violated.