I'd like to suggest a few feature/improvements for the witness_node.
1) Add support for multiple CPU cores. The witness_node is only using 1 CPU core at the moment, which means that certain tasks like --replay-blockchain takes forever.
2) When a witness_node is starting up, it should print a preview of the configuration parameter/values it is using. This preview would be very useful while debugging/configuring the node for the first time. Currently the witness_node can be configured using command-line arguments and config.ini. If both are used, a CLI argument might override the config.ini parameter.