Makes the given list of shapes visible within the given layer(s).
The function assumes that the shapes are part of the diagram and that the diagram includes a layer with the given id. If the layer does not exist, an exception is thrown. If one of the shapes is not in the diagram, the result is unspecified. If one of the shapes is already in one or all of the layers, nothing happens to this shape.