Perform graph multiplication for flexible molecules. Where possible, the
result is constructed by superimposing a from one diagram on top
of a node from another diagram. The superimposing is possible when the
following criteria are met:
1. the nodes being superimposed must be the same color.
2. At least one of the nodes must be a root node.
3a. The node color must correspond to a rigid molecule.
or
3b. One of the nodes must have no edges.
When not possible to superimpose, the result of multiplication
for each pair of diagrams is a diagram composed by both original diagrams
without any connection between them (the new diagram is disconnected).