Add ExchangeSupervisorActor

**Description** Add ExchangeSupervisorActor without the handling of the failure cases, which will be handled by a new actor which is out of scope for this PR
**Testing** Tests added, tests pass
**Coverage**

- ExchangeSupervisorActor: 100%
- InitializedExchangeSupervisorActor: 93.40%
- DefaultHandshakeActor: 100%
- InitializedHandshake: 100%
From this line, I guess `ExchangeSupervisorActor` is supervises only one exchange at time. Is that correct?