Refactor job queued and destroyed

Paired with @steveklabnik to refactor these similar methods and hide the cruft in a protected method called process_queue.