[modifiers] pose_noise: separate std_dev for each axis

This makes it possible to specify the noise for each axis separately as
a dict.
If a single value is passed, it is used for all axes.
E.g.:
pose.alter('', 'morse.modifiers.pose_noise.PoseNoiseModifier',
				pos_std={'x':0.01, 'y':0.01, 'z':0.1},
				rot_std=math.radians(1))
or
pose.alter('', 'morse.modifiers.pose_noise.PoseNoiseModifier',
				pos_std={'x':0.01, 'y':0.01, 'z':0.1},
				rot_std={'roll':0.01, 'pitch':0.01, 'yaw':0.05})
[modifiers] imu_noise: dict for separate std_dev on each axis
[core] Add an helper for mathutils.Quaternion

Use it in pose_noise and so allow the correct build of the
documentation.
[doc] moos fix typo
[builder] Try to use default interface whenever possible

When setting a default interface to a robot, and adding a component
that is not declared in builder/data.py, it fails.

This commit tries to use, if it exists, the default method of the datastream mw.

Typical scenario: you develop a new component out-of-tree. You want to
test it/debug it with the socket interface. It may work out-of-the-box
(we still display a warning, though).
[builder] ``Fix`` add_stream for stuff without classpath

It is in particular the case for Environment, and it was ``legal`` to
call add_interface on Environment. Restore the previous behaviour.

While here, wrap some long lines (Hi Séverin).
[test] Fix some typos in pose_noise testing (odomerty -> odometry)
[doc] Jenkins widget: testing->build
[bin] Separate set_prefixes from check_setup

This allows to detect and set the various MORSE prefixes without actually launching
Blender for the sanity check.
'morse {create|rm|add}' to help with simulation creation

This commit proposes new command-line tools to create initial
'simulation environments' that
aim at simplifying and formalizing the code/resource layout
of a MORSE simulation.

The commit also introduces the idea of 'simulation environments' that
are directories containing all required resources for a simulation
project.

The tool currently implement 3 modes: create, rm and add

* When running 'morse create my_simu', the tool creates a new
directory called 'my_simu' with a template MORSE scene (my_simu.py).

If a environment with the same name was previously defined, the user
must use 'morse create -f ...' to force overwriting.

The scene can directly be run with 'morse run my_simu' (or optionally
with 'morse run my_simu other_file.py') (current usage of 'morse run
<file>' is preserved as well).

A test client (scripts/my_simu_client.py) that uses pymorse is also
generated.

* 'morse rm [-f] <env>' deletes an existing environment

* 'morse add [robot|sensor|actuator] name [env]' inserts templates for
new components. WIP! CURRENTLY ONLY ROBOT ADDITION WORKS.

You can get details by running 'morse <mode> --help' or
'man morse-<cmd>'.

The commit also propose an initial 'simulation environment' template
located in $MORSE/data/templates. Improvements are welcome.
Added man pages for each of the morse subcommands
First template for actuators

Test it with: morse add actuator <name> <env>

Demonstrate a synchronous service and an asynchronous one

Current implementation of default_action is not great (looks
more like a sensor)
Added --force to 'morse add'

While here, fixed some printed paths displayed after adding a component
[doc] Mention morse {create, add, rm} in what_news
[doc] Sync RELEASE_NOTES with what_news
[doc] Simulation creation tutorial, chapt. 0->4

This large tutorial covers the process of creating a complex
simulation in MORSE, with custom robot and actuators. It is
based on the EPFL's Ranger project.

It covers Blender modelling as well as Python programming and client
side testing with pymorse.

This commit provides chapters 0 to 4:

Chapter 1: The Ranger robot
Chapter 2: Making a robot mesh
Chapter 3: Our first robot controller
Chapter 4: Creating a new actuator to move the eyes
[test] proximity: wait after updating sensor settings
Do not try to load pygments if morse is not started with -c
[doc] Fix several spelling issues in user/basic_morse.rst

While here, deal with a few other styles issue

This page must probably be updated to reflect last changes in morse
(environment, options restricted to certain commands, ...) (Hi
Séverin).
[bin] Export the whole sys.path in PYTHONPATH to Blender

The sys.path is not initialized in the same way with the python3
interpreter, and the inner python3 embedded in blender. So export fully
the sys.path through PYTHONPATH so the user get the expected environment
in blender context.

It was done before, but lost in 987162b787. Reported by Felix Ruess.