Set RPC protocol and auto_sm at runtime and not compile time
There is no need to define the protocol and auto_sm as compile time options. Instead I propose that they are passed as an argument to the daemon. The clients determine the protocol by reading the hosts file, including if auto_sm should be used or not.
Therefore USE_SHM and RPC_PROTOCOL as cmake parameters are dropped.