Ch 1408 - Pause agents in Lift when they are paused in Drupal

I ended up doing a lot of work on how we handle bad responses from Lift as part of this story. The main reason for doing this was to allow the queue to be aborted if a certain type of exception is thrown. If we are making a bad request that Lift cannot handle, then the queue should not proceed to the next item, which could be setting the status to running. Instead the user should get a message that something went wrong.
Yeah I just don't want to introduce any side effects here and currently we accept only a 200 response. I'm not sure what would cause a >200 successful response in any of these calls, so for now they'll just get logged as warnings in the handleBadResponse() method.