Symmetric arguments in connect method

Make sure that the argument order in connect method is symmetric. The
new order is (sourceComponent, inputPort, sinkComponent, sinkPort).
Symmetric arguments in connect method

Make sure that the argument order in connect method is symmetric. The
new order is (sourceComponent, inputPort, sinkComponent, sinkPort).
Add checks to Dispatcher class.
Add merge and sampleOn components.

Merge component merger two observables into one.

SampleOn component get the value input whenevet the sampleOn input
changes.