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.

I read it as: 
1. initial generation number must be 0;
2. each time an obj number is reused, its generation number +1, and object with previous gen is deleted;
3. are there any other mechanism to increase generation number? I don't find any in the spec.
So It's reasonable to say: for a given obj number, only the object with max gen number can be alive.

You can also directly override an exiting obj with same obj number and gen number, but this doesn't invalidate the rule above.