Slight thread.h tweaks
* Replace an asm barrier with a more portable gcc intrinsic.
  Timings appear not to suffer.
* Replace Windows _ReadWriteBarrier with MemoryBarrier; reading docs indicate
  that RWB only affects compiler semantics, not processor semantics.
New build flag OIIO_THREAD_ALLOW_DCLP, if set to 0, will modify spin_mutex
and spin_rw_mutex to avoid the double checked locking pattern, which we
think is correct, but throws off Thread Sanitizer and possibly could be
a problem for other tools in the future.
Speed up timer on OSX and Windows by precomputing seconds_per_tick.

Testing on my OSX laptop, this sped up timer begin/end from 5.2 M/sec
to 28 M/s, i.e. reduces the overhead of using timers by 80%.
Simplify timer.h to have fewer platform-dependent if's.
Strutil::safe_strcpy -- like strncpy, but copies terminating 0 char.
And fix several places where strcpy might be unsafe or have buffer overrun.
Change declaration for VC compatibility.
Fix bug in multi-point environment call -- wasn't incrementing result pointer.
Also modify the multi-point texture and environment calls to use
get_perthread_info and get_texture_handle to do those expensive operations
just once per grid, rather than per point.
Update tinyformat to fix gcc 4.8 compilation issue
PFM support from Gregor Mueckl
Make gif and pnm tests dependent on their test dirs and libraries being found
For older cmake, a second-tier test to detect if we're using clang
ParamValue: Allow get/set of interp
ParamValueList::push_back should take a const ref to a ParamValue
Rearranging data members of ParamList compresses the struct by 8 bytes.
Merge pull request #752 from lgritz/lg-paramlist

ParamValueList tweaks
CMake fixes to account for OpenEXR naming changes
Make sure we include all OpenEXR related headers with <OpenEXR/foo.h> and remove the addition of the OpenEXR sub-folder from system search paths
EXR fix: multi-part exr is required to have "name" attribute for each part.
The EXR "name" attribute corresponds to our "oiio:subimagename".
iconvert: fix to handle multi-image files that can't append subimages
IBA::pow, oiiotool --cpow : raise pixel values to a power