Refactor client info logging to make it easier to extend
Add authentication support

Authentication is disabled by default.

Also disabled WebSocket support by default. It'c recommended now to
enabled authentication if WebSockets should be used.