Bug fix oiiotool --origin could crash with ImageCache-backed images.

In oiiotool's set_origin action, the naive resetting of the spec's x and
y values is not safe if the IB is backed by ImageCache -- the mismatch
of the image origin (which determines the tile boundaries) between what
the IC thinks and what the IB thinks leads to grief.  The fix is that
prior to resetting the image origin, cached images need to have a read
forced to bring them into memory.  Images fully in memory already are
fine to just diddle the origin value.  This does not necessarily make
--origin more expensive, since oiiotool alread does the force-read on
reasonable-sized images (for speed) and only caches really big images.