Move dependencies out of the constructor in the exchange classes

**Description** This is a small refactor that moves dependencies out of the constructor so that the Exchange supervisor can be written.
**Testing** Tests pass
**Coverage** 92% for the exchange package, 95.37% for the handshake package
[Unrelated to the PR scope] Are we still wanting to publish the TX here? That is now a duty of the broker (set).