Added a 'noocclusion' option to semantic camera to disable occlusion testing

Useful when tracking many objects since the raycasting can be
quite CPU intensive.

To use this option (disabled by default, ie, the current behaviour is
the default behaviour):

cam = SemanticCamera()
cam.properties(noocclusion = True)

While here:
- fixed performance issues introduced by logging calls
[testing] Support testing for invalid scenes

This commit introduces a new class of tests: MorseBuilderFailureTestcase. These
tests pass if MORSE *properly fails* to load the scene (ie, it tests that the
GameEngine is not started).

The commit also include 2 tests that currently do not pass (cf bug #374).

While here:
 - improve management of PIDs (you do not need to get it from MORSE log,
   Popen.subprocess give it back to us). This allow to kill MORSE even
   if it did not reach the initialization stage.

TODO: I've no example of invalid scripts that are correctly handled by
MORSE, so I could not test that MorseBuilderFailureTestcase actually
pass when MORSE dies before starting the BGE.
[pymorse] use asynchat for stream handling

asynchat / asyncore deal with message buffer and channel synchronization
delete `ComChannel` (replaced by the `asyncore.loop`)
add a Morse.is_up() method to know if the simulation service is
connected. So use `while sim.is_up():` instead of `while True:` in
pymorse scripts.
[builder] quie by default for unhandled exception

default behaviour: quit Blender if an exception was not catched
[pymorse] update pymorse test
Partially revert 138c97

We need to get the PID of the Blender process itself, not the MORSE process.
Make it clear by adding a comment to _extract_pid()
[core] Properly inherit properties for parent classes

This bug has been revealated by 138c97b
[sensor] Fix a typo in semantic_camara
[doc] Force the output in stdout and files to utf-8
[cmake] Don't need anymore to do weird thing to force locale
[doc] Whitespace fixes in generate_doc tool
[pymorse] use threading.Condition in Stream
[testing] fix new crash on builder error behaviour
[pymorse] RPC now use subscriber + condition object
[pymorse] patch asynchat.async_chat.initiate_send
[testing] test failure: we only test the parsing of the script
[testing] fix run test with morse command
[testing] fix missing 'not' in main test
[doc] Fix various invalid statement in ros_nav_tutorial

- remove deprecated topic remapping
- fix scan name confusions
[bin/morse] blender-2.67 seems ok for Morse

It passes the different tests, so let say that Morse is ready for
blender-2.67