minor code tweak.
added a variant of the path traced WinOSi scene that doesn't use caustics.
added assertion, improved call graph documentation.
added support for various per-object-instance ray bias methods.
fixed shadow terminator issues.

this commit introduces a regression which will be tackled in a follow-up commit: mixing a non-refractive, purely specular BTDF with a half-vector-based BRDF results in artifacts.
BRDFs will now return black if the incoming or outgoing directions are below the shading surface.
reimplemented support for ray bias.
updated reference images.
added ray bias to the diffuse sphere in the WinOSi scenes.