'Render this image stack.
Given a configuration object, starting image, and coordinate,
return an output image with the results of all the layers in
this stack pasted on in turn.'

def render(self, config, input_rgba, coord):

    stack_rgba = [numpy.zeros(chan.shape, chan.dtype) for chan in input_rgba]
    for layer in self.layers:
        try:
            if layer.in_zoom(coord.zoom):
                stack_rgba = layer.render(config, stack_rgba, coord)
        except IOError:
            pass
    return blend_images(input_rgba, stack_rgba[:3], stack_rgba[3], 1, None)
