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.

>Still I till po is not that intuitive, How about x or o for objects?

'obj-' may be better?

>Please remove the dash and use `%x' here.

Without a dash, searching for 'po' or 'o' or 'obj' in the output may result in many false positives, adding a dash or something would be better. Obj numbers in PDF are decimal, so I don't think '%x' makes sense.

>I found this function a little bit weird, both the return value and an argument are used as output.

Return value is just a ref to the argument. This makes calling code simpler:
```
string path;
ofstream imgfile(build_bitmap_path(imgId, path), ofstream::binary);
```
Instead of
```
string path;
build_bitmap_path(imgId, path);
ofstream imgfile(path, ofstream::binary);
```