class Async::HTTP::Pool

def next_available

TODO this does not take into account resources that start off good but can fail.
def next_available
	@available.each do |resource, count|
		if count < resource.multiplex
			@available[resource] += 1
			
			return resource
		end
	end
	
	if !@limit or @available.count < @limit
		Async.logger.debug(self) {"No available resources, allocating new one..."}
		return create_resource
	end
end