Set proper headers on Cover Images so they can be cached by the browser

Before this commit cover images were requested on each page load, even if they have already been sent to the user's browser. Since the cover images will not change between requests it would be better to send proper headers with them so that the user's browser can cache them. This will also reduce the number of HTTP requests the server needs to respond to which can reduce load and improve performance.