avocado: Support for multiple multiplex yaml files

This patch adds support for multiple yaml files by merging the values
together. Merge overrides the nodes value and appends missing children
iteratively. It's deterministic AND order dependant (yaml1 yaml2 migh
not provide the same results as yaml2 yaml1!).

Signed-off-by: Lukáš Doktor <ldoktor@redhat.com>
avocado.multiplexer: Rename create_variants_from_yaml to multiplex_yamls

create_variants_from_yaml is hideously long. Use multiplex_yamls instead.

Additionally change default values from lists to None.

Signed-off-by: Lukáš Doktor <ldoktor@redhat.com>
selftests..unit: Rewrite tree and multiplexer unittests

Instead of adjusting existing tests I rewrote them from scratch with
parallel execution in mind.

Signed-off-by: Lukáš Doktor <ldoktor@redhat.com>
avocado.core.tree: Stop using OrderedDict for values

Values doesn't need to be ordered, only node->child dependency order
matters.

Signed-off-by: Lukáš Doktor <ldoktor@redhat.com>