Use noise protocol on handshake. Check peer's public key if needed. Also support rekey and replay attack prevention.
E2EE and temporary password will be implemented based on this.
* correctly set mtu, and allow set mtu manually
* communicate between enc and non-enc should not panic
* allow loading cfg from file
* allow change file log level dynamically