Refactoring ILogger, see aspnet/Logging#3
Added negative tests and refactored code
updated constant name, code cleanup