Merge branch 'origin/master' into dev
fixture: enable debug config to overwrite .cfgs

Before this commit the development environment for new tests had to be the same
that was written into the .cfg files. This is not the case all the time though.
Sometimes the serial-ID for a development device might not be the same as the
one which runs the tests in the ends.

The implemented solution allows defining a new .cfg file at a chosen location
in the system and set the environment variable MONK_DEBUG_SOURCE to the
absolute path of that file. After discussing different options this one was
chosen because forcing a specific location would sometimes not be feasable
(.e.g. when a CI-server does not have a home directory). Also a file could be
written and then activated and deactivated at choice via the environment
variable.

Now the __init__() method of Fixture will look for that environment variable
after everything else is done and if it exists it will open that location as a
new source, overwriting everything from the second level downwards in the
configuration tree. This change also required to split up the parts of read()
inside the __init__() method, because if a test case gives a source to a new
fixture file with data that is incorrect on the current system, then a read()
would start to create objects and apply the incorrect data before an update
with the debug file can occur. Therefore the _initialize() step was put last,
after all sources are read.

Signed-off-by: Erik Bernoth <erik.bernoth@gmail.com>
Prepare release 0.1.9

Signed-off-by: Erik Bernoth <erik.bernoth@gmail.com>
Merge release 0.1.9