Fixed lazy image loading so that the placeholder image (an animated spinner) is displayed in all browsers until the image finishes loading or gives an error.

Before this commit, the lazyloading code worked with a single image, replacing the "src" attribute of the image with the "data-src" attribute. This gave the desired behavior on firefox (the placeholder image pointed by the original "src" was displayed while the image pointed by "data-src" loads), but in other browsers (e.g. chrome) the placeholder image was not displayed while the image loads. The reason for this is that chrome removes the old image as soon as the "src" attribute is changed, and nothing is displayed while the new image data loads.

To get consistent behavior and proper displaying of the placeholder while images load, when loazy loading an image a copy of the image is created and hidden with javascript. The original image shows the placeholder while the (hidden) copy scr is changed so that it loads the actual entry image. If the copy image loads successfully, it is displayed and the original image hidden; while if the copy image does not load, it is left hidden and the original image is hidden as well.

This gives the desired behavior, but at the cost of some client performance because of the DOM manipulations (most importantly, inserting nodes for the image copies).