Replace ExchangeInfo and HandshakeFactory

**Description:** replace ExchangeInfo and HandshakeFactory.
**Testing:** tests still pass
**Coverage:** about the same
I know this is not part of this PR, but what does the `Proto` in `ProtoMicroPaymentChannel` mean?