Non-blocking from throttled queue standpoint, tries to return a
        queue pop request, only will return a request if
        the given time window has not been exceeded

        @return: The item if the throttle limit has not been hit,
        otherwise None

def pop(self, *args):
        '''
        Non-blocking from throttled queue standpoint, tries to return a
        queue pop request, only will return a request if
        the given time window has not been exceeded

        @return: The item if the throttle limit has not been hit,
        otherwise None
        '''
        if self.allowed():
            if self.elastic_kick_in < self.limit:
                self.elastic_kick_in += 1
            return self.queue.pop(*args)
        else:
            return None