Implement quiescence protocol (quiescence, splicing, dual funding)

https://github.com/lightningdevkit/rust-lightning/pull/3588

Host: vincenzopalazzo  -  PR author: wpaulino

Notes

Questions

  1. Did you review ldk/3588? Is it a Concept ACK, Approach ACK, Tested ACK, or NACK?
  2. Did you read the BOLT2/quiescence to learn more about the Quiescence protocol?
  3. In what part of the lightning network protocol is the channel quiescence used or will be used?
  4. If we are in the middle of a quiescence protocol exchange, and the connection sadly drops, what happens?
  5. How is ldk/3588 implementing the protocol? How will it track the channel state?
  6. What happens to channel updates after a channel is in quiescence mode? How is ldk/3588 implementing it?