I had this idea when implementing #10382 and #10392 as I introduced a
very similar structure to python's standard unittests in those and it
could also reduce some code duplication between those two tests.
If not defined it was raising a KeyError. Use the 'get' function to
handle non defined value.
It did not put the value in the `default` case as it would have changed
the behavior when `RIOTBASE` is defined but empty.
Introduce dist/pythonlibs directory to store RIOT python packages.
This directory is exported via PYTHONPATH by the build system to
make it commonly available.