Check transitive stream collision
A transitive stream collision could happen in such a case, for example,
modulea buildrequires foo:1 and bar:1, then foo:1 requires baz:1 and
bar:1 requires baz:2, which will cause the collision on modules baz:1
and baz:2.
This patch checks the collision when submit a module build and each
expanded (module stream expansion) module will be check. If a module has
collision, error will be raised immediately.
Resolves: FACTORY-2612
Signed-off-by: Chenxiong Qi <cqi@redhat.com>