Moved Log::Level to its own class LogLevel
Created class LogComponent
Modified class LogFormat to accept arbitrary items
Added generic class Format
Modified LogFormat to inherith from Format
Added class LogFormat
Added unit tests
Hiding enum Level defined in class LogLevel.