code: function Queue(rateLimiter, api, logger, options) {
  	  this.rateLimiter = rateLimiter;
  	  this.api = api;
  	  this.logger = logger;
  	  this.options = options;
  	  this.predicates = [];
  	  this.pendingItems = [];
  	  this.pendingRequests = [];
  	  this.retryQueue = [];
  	  this.retryHandle = null;
  	  this.waitCallback = null;
  	  this.waitIntervalID = null;
  	}
docs: /*
  Queue - an object which handles which handles a queue of items to be sent to Rollbar.
  This object handles rate limiting via a passed in rate limiter, retries based on connection
  errors, and filtering of items based on a set of configurable predicates. The communication to
  the backend is performed via a given API object.
  
  @param rateLimiter - An object which conforms to the interface
  rateLimiter.shouldSend(item) -> bool
  @param api - An object which conforms to the interface
  api.postItem(payload, function(err, response))
  @param logger - An object used to log verbose messages if desired
  @param options - see Queue.prototype.configure