implement ILogger instead of extending Logger