One server implementation instead of two, plus simplify I/O operations
scheduling by processing everything in loop regardless of the server
type used.
Make it possible to accept authorization and several commands in a
single packet. If we fail the check, clients discards rest of the data.
Since we finally track connection state, debug info gets set *only* to
authorized clients.