svg external bitmap

This patch enables saving bitmaps in svg as external files, so as to reduce output size and rendering costs, and allow easier post-processing of bitmaps.

Currently only DCT images can be saved as jpg, other images are still embedded in svg.

>So in my previous example, an old object has already been rendered, then deleted and reused. 
No. If an old entry is marked as 'f', it is not accessible to a PDF reader at all, so can't be rendered. 
In poppler, If an entry is reused, only the newest entry is picked up during the parsing of xref table, the old ones are just ignored; and `XRef::fetch()` returns null obj if you try to fetch an entry with type `xrefEntryFree`.