'Return a detailed list of images.
Yields a series of images as dicts containing metadata.'

def get_images(self):

    params = {'is_public': None}
    while True:
        url = '/v1/images/detail'
        query = urlparse.urlencode(params)
        if query:
            url += ('?%s' % query)
        response = self._http_request('GET', url, {}, '')
        result = jsonutils.loads(response.read())
        if ((not result) or ('images' not in result) or (not result['images'])):
            return
        for image in result.get('images', []):
            params['marker'] = image['id']
            (yield image)
