added a root finder based on Newton's method.
avoid std::function<> because it incurs a large performance penalty (10% in the case of renderer::TransformSequence::compute_motion_segment_bbox) as explained in this article: http://www.drdobbs.com/cpp/efficient-use-of-lambda-expressions-and/232500059.
switched to Newton's root finder and further simplified and cleaned up the code.
added unit benchmark for renderer::TransformSequence::compute_motion_segment_bbox().
replaced the foundation::Transform constructor taking a single local-to-parent matrix by a static method as to make the runtime cost of this operation more explicit, and updated the rest of the code accordingly.
optimized renderer::TransformSequence::compute_motion_segment_bbox().