imagespeed_test improvements: refactor, and add tests of image iteration speed.
We compare pointer arithmetic, versus getchannel(), versus IB::Iterator,
and for each of those for loaded versus cached images.
Convert ImageBuf to use PIMPL idiom to completely hide implementation detail
from the public interface.
Refactor ImageBuf iterators -- move as much common material from Iterator &
ConstIterator into a shared IteratorBase class.
More refactoring of ImageBufImpl and ImageBuf::Iterator for performance.
Make ImageBuf::Iterator/ConstIterator fully inline.
I tried to reduce clutter in imagebuf.h by making many of the methods
implemented in imagebuf.cpp, but I later realized that by making it entirely
inline gives us much more flexibility in changing the implementation in the
future without breaking link compatibility with apps (there's nothing to
link against if it's fully defined in the header).
More ImageBuf refactor: remove virtual dtr, un-inline some funcs.
Merge pull request #482 from lgritz/lg-ImageBuf

ImageBuf internals overhaul
maketx --fullpixels
When given this command, maketx will consider the pixel data window of
the input image to be the full 0-1 texture range, ignoring any origin or
differenly specified full/display window (i.e. pretending that the image
is not, as its header may state, a crop of overscan image).  This is
primarily to counteract weird or buggy behavior in certain paint program
that inexplicably save images that look like crops even when they are
not intended to be.
maketx -- robustly remove "SHA-1=..." and "ConstantColor=..." from the
ImageDescription of the input image, without losing whatever else may be
in that metadata.
Add testsuite for maketx