Fix T41456: soft light texture blend mode zero effect

Soft light and Linear light blend modes weren't implemented in glsl

Reviewers: psy-fi

Maniphest Tasks: T41456

Differential Revision: https://developer.blender.org/D744
Fix for fix (don't guess enum's sign)
Fix for BKE_deform_flip_side_name getting fooled by extra separator characters

D740 by ldo with own edits
Fix T41479: BLI_bvhtree_find_nearest inaccurate

Gives noticeably better results for shrink-wrap (even in simple cases)
Fix mesh validate skipping first vertex
Fix T41471 Cycles Bake: Setting small tile size results in wrong bake with stripes rather than the expected noise pattern

This problem was introduced in 983cbafd1877f8dbaae60b064a14e27b5b640f18
Basically the issue is that we were not getting a unique index in the
baking routine for the RNG (random number generator).

Reviewers: sergey

Differential Revision: https://developer.blender.org/D749
Fix crash in BKE_mesh_validate_arrays
add: initial datablock patch apply
fix: osx compilation fail
fix: formatting cleanup