Make all Logger's private static members

Instead of activating an ILog in constructors, make all instances of ILog a private static members. A logger is thread safe so only need to activate it once. This will also have a performance benefit.

Also some minor adjustments where I spotted some inconsistencies (i.e. explicit modifiers on private members etc)