Client side, many new implementation, daemon socket communication, yet
untested :D