Finds a resource by key, first case insensitive match.

		Returns tuple of (key, resource)

		Raises KeyError if the given key cannot be found.

def _find_resource_by_key(self, resource_list, key, value):
		"""
		Finds a resource by key, first case insensitive match.

		Returns tuple of (key, resource)

		Raises KeyError if the given key cannot be found.
		"""
		original = value
		value = unicode(value.upper())
		for k, resource in resource_list.iteritems():
			if key in resource and resource[key].upper() == value:
				return k, resource

		raise KeyError, original