Add a 'debug' log level

Like 'info', it is mapped to error_logger:info_msg/2.
Log new/closed connections only if they are not a healthcheck

The "new connection" message log is deferred to the moment we receive
the first byte or an error occurs.

If the connection is closed without receiving any data, we consider it
is a TCP healthcheck. Therefore the new/closed messages are logged only
if the log level is 'debug'.