Refactoring Logging logic

This Pr changes the Logic of the logging to Channels, instead of static strings ("server") which defines the Channels, which causes often causes crashes with "Logging to not existing Channel", we will now have fixed Definitions. ("Server")

This will give us the following:
- Fixed Channel name Style (we cannot misstype a channel: "Server" instead of "server")
- AddChannel needs only one argument instead of two
- We can see a full list of Channel which are Available :)

This is requiering the following:
- All FileName are not fully Lowercase ("Server" instead of "server")
I much prefer string.Format (using our `.F()` extension method) over `"foo " + stringInstance + " bar".