Fix T38753: Python script paths weren't escaped (Win only)
Docs: doxygen sections for bmesh walkers
Replace the int argument for user count mode when restoring pointers on
undo with a nicer enum.

This is more transparent about what happens with the user count.
Also added comments to make certain the meaning of these values is
easily understandable.
Fix T38407: Bone roll calculation flips local axes at wrong rotation angle.

Basic idea is now to have the transformes bones keep "facing" the armature's Z axis, see comments in code for details.

That might not be ideal, but at least we now have humanly predictable and consistent results.
Fix T38743: Modal input feature appears to be missing from 2.70 test builds

Add 'pad *' in addition to '=' to toggle basic/advanced numinput modes.
Minor UI messages fixes.
Avoid UUOC in install_deps.sh

The file ##build_files/build_environment/install_deps.sh## contains the following line:

  THREADS=`cat /proc/cpuinfo | grep processor | wc -l`

The command within the backticks is a [[ http://catb.org/jargon/html/U/UUOC.html | Useless Use Of Cat ]].

A more compact way of writing the same thing (saving two subprocesses) is

  THREADS=`grep -c processor /proc/cpuinfo`

or (using POSIX-preferred command-substitution parentheses instead of backticks)

  THREADS=$(grep -c processor /proc/cpuinfo)

But the most compact, and least Linux-specific, way is to use the ##nproc##(1) command from the [[ http://www.gnu.org/software/coreutils/manual/html_node/nproc-invocation.html | GNU coreutils package ]]:

  THREADS=$(nproc)

Reviewers: sergey, mont29

Reviewed by: mont29

Differential Revision: https://developer.blender.org/D255
Followup for numinput: activate numinput when hitting pad* or =, this is the expected behavior from users!