BSDF sample refactor #4

- Fixed previous PR comments.
- Renamed BSDFSample::get_value() to value().
- BSDFSample now takes a ShadingPoint and modifies the shading basis automatically.
- Fix for an unrelated compiler error in appleseed.studio.

There's also a boost::to_string function in boost exception. Because we have using boost and using foundation at the top of the file, gcc cannot decide which one it is and the qualification is needed.