[builder] Add entries for v_omega_diff_drive

Fix issue #184
[mw/text] Make the 'text' mw accept extra functions

Allows to redefine the output file format (for instance writing to a csv
file)
[mw/socket] Use '' to represent correctly INADDR_ANY

Fix issue #109
[mw/socket] Write a specialized json encoder

This specialized json encoder can encode mathutils structure and
Transformation3d. It allows to store and use more high level structures
in local_data, in particular to represent position (see issue #193).

As a side effect, it allows back to export properly IMU through socket.
[mw/socket] Use the default socket encoding for semantic_camera output

In previous commit, we allow to output directly mathutils.Vector and
mathutils.Quaternion. So, the specialised semantic camera is now
useless.

Note that it breaks the interface exposed by the socket, but the new
solution is more correct (regarding the documentation). Adapt the test
to match the new interface
[sensor/battery] Don't use time.clock() but time.time() to measure time

time.clock() measures the cpu time of the process, and not the real
elapsed time (which is measure by time.time()).

XXX: not completly correct as it must use the simulated time, but better
than the current code. At least, it fixes the unit test.
[testing/segway] Desactive last part of datastream test

At high speed, the robot slips too much on this kind of surface.
However, this behaviour seems reasonnable comparing to real-life
behaviour, but difficult to properly measure. So just desactivate this
part of the test.

While here, reactive the service test.
[actuator/kuka_lwr] Reject invalid call to set_rotation

Throw exception if set_rotation is called with angles exceeding arm
limits. Do the same thing for set_rotation_array.

Add the necessary test for set_rotation_array + update the comment for
failure.

Document the behaviour in doc.

Close issue #87.
Renamed 'middleware' to 'datastream' where relevant

This makes much clearer that what we commonly call 'middleware' in MORSE is only the
datastream oriented interface of the middleware.

Some references to 'middleware' in the documentation are probably not
yet correctly updated.

Attention: this commit touches a large number of files
Minor fix to ROS unitests

As of this commit, they all successfully pass.
{middleware->datastream} in examples stored as Blender files
[testing] Add some unit-test for rotorcraft waypoint actuator

Fix issue #201
[doc] Improvements to cmpts doc generation + doc update for several cmpts

The documentation update is a copy-paste of the .rst documentation to the
components' python source files.

The updated resulting documentation pages are not part of this commit
Added a specialization of MorseTestCase for ROS (RosTestCase). Updated accordingly unittest using ROS

RosTestCase better check your environment is set up for ROS, and starts 'roscore' before launching the unittests.
[testing] Add unit-test for thermoter sensor

Fix issue #195
[sensors] Misc improvements for thermometer

Use add_data to expose local_data
Add needed fields for documentation + improve class docstring
Replace direct bge call to blenderapi equivalent wrapper
Misc styles change from pylint
[testing] Add some test for victim detection and healing sensor

Fix issue #194
[sensor] Fix a non-termination issue in rosace::heal

Previously, the heal service does not return if the sensor does not have
any victim in its neighborhood. Handle this case correctly. Make the
unit-test to pass correctly.
[sensors] Enhance a bit the style of rosace sensor

Use add_data and add_property
Document properly the different services
Wrap call to bge in blenderapi equivalent
Wrap long lines
Fix some error message (detect_distance vs heal_distance)
[ros] depth camera support

test with:

    camera = Sensor('depth_camera')
    camera.properties(cam_width = 128, cam_height = 128,
                      capturing = True, Depth = True)
    camera.configure_mw('ros')
    camera.frequency(10)