not so updated with the development. So counterpartyd breaks into counterparty-lib which is like "counterpartyd server" and counterparty-cli will do rpc requests as client side ? What are the benefits ?
Not exactly: `counterparty-lib` is used by `counterparty-server`(part of `counterparty-cli`) to run the RPC server, and `counterparty-client`(also part of `counterparty-cli`) communicates with `counterparty-server` and a wallet.
Main benefits:
- Clear distinction between block explorer and wallet dependencies: Applications like CW not needs any more to have a running Wallet in the server. This mades possible for instance to add support for BTCD very easily. Also light wallet is easiest to develop with this architecture: you can use a distant block explorer (like BCI) and a local light wallet (like pyrpcwallet)
- Clear distinction between applications and library: One can develop easily an alternative CLI or GUI (or any other "Crypto Application") just by using `counterparty-lib` as a classical Python library. Also `counterparty-lib` contains now only code related to the protocol, this makes clearer what should be covered by the test suite in priority, and in general makes easier to maintain the "core" code.
In short this update is another step forward to make Counterparty the standard framework to develop Bitcoin 2.0 Applications.