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