Fix bug inadvertently introduced in 0d5b6356856.

That commit inadvertently picked up a kd-tree experiment that
didn't work and wasn't supposed to be checked in.

Tracked down by Brendan Duncan.
Fix ReadImageEXR() so that single-channel images work.

Issue #31.

The fix was just to use more modern OpenEXR interfaces, which handle
this case transparently.
Fix bugs in ray differentials with depth of field.

First reported by Kevin Chen years ago.
Fix partially based on code from 陈家挺.
Also issue #31.
Issue and error (and don't crash!) if an invalid LookAt transform is specified.

Issue #26.
Fix build for Windows to not fail if <stdint.h> was #included.

(And just include it if it's available vs making our own..)

This header is finally available as of MSVC 2010, but our workaround
definitions were missing explicit 'signed' qualifiers, which led to
incompatible typedefs.

Issue #17.
Add support for PNG image output.
fix the uint8 overflow bug in recursiveBuild function
Fix bugs in pbrt code generated by obj2pbrt when textures are present
Fix more bugs in obj2pbrt

Handle more types of bump map.
Parse bump map scale factor
Issue warnings on ignored bump map options
Don't scale image textures by (0,0,0) if the user hasn't specified an
  actual Kd (etc.) scale factor for the corresponding component.
Bump copyright year.
Print more informative error message for unsupported image file formats.
Merge pull request #33 from dut09/fix-uint8t-overflow

fix the uint8 overflow bug in recursiveBuild function
Reindent code
Change rindex() to strrchar(). (MSVC build fix.)
Add <algorithm> #includes in OpenEXR code