UI: make it clear edge functions handle multiple loops/rings
Fix T40411: UI incorrectly permits changing materal_slots on linked obdata
Fix T40414: Multiple input nodes in a group not working.

A node group can have multiple input nodes. In the compositor that means
each of the input sockets has to be connected to the linked outputs,
which is represented by a single link on the outside of the group.
OSX: fix T40413, automatic threads for compile throw wrong output
Fix T39686: nused omp firstprivate variable sphdata in particles
Fix OpenCL compilation error in Cycles, when building without hair support.
BLI_dynstr: add assert to check curlen is correct
Sequencer: use escaping for sequence names
Cleanup: Use doxy for more structured comments
Fix T39174 Bevel didn't maintain edge attributes.

When rebuilding the polygons that touch bevel-involved vertices,
need to copy the edge attributes from corresponding original edges.
Special treatment of corner segments, to maintain continuity of
smooth and seam attributes.
Another fix: if have four meeting edges, two opposite ones beveled
and the other two not, propgate the non-beveled-edges attributes
across the line that joins them (perpendicular to the bevel).
Comments: Note direction in doxy args
Fix T40408: world MIS + equiangular sampling giving unnecessary noise.

It's actually not possible to do equiangular sampling for distant lights, now
it reverts to distance sampling in this case.
Fix T39804: cycles smoke domain visible in rendering.

Transparent objects could become subtly visible by the different sampling
patterns for pixels covered and not covered by the object. It still converged
to the right solution but that can take a while. Now we try to use the same
sampling pattern here.
Math lib: add negate_m3, negate_m4